有没有办法在不启动节点服务器的情况下逐步调试单个javascript文件?
例如knex的种子文件。
明确需要节点,但我不知道如何仅使用该文件启动VSC调试器。
答案 0 :(得分:4)
有两种方法可以实现这一目标:
只需添加launch.json
并提供file_name
即可。然后开始
调试。
例如,如果您的file_name
是index.js
。创建一个文件夹
名为.vscode
并在此文件夹中创建launch.json
,结构如下所示:
main_folder
|___ index.js
|___ .vscode
|___ launch.json
并在launch.json
:
{
"configurations": [
{
"type": "node",
"request": "launch",
"name": "Launch Program",
"program": "${workspaceFolder}/index.js",
"cwd": "${workspaceFolder}"
}
]
}
第二个选项是创建package.json
并将您的文件作为入口点。当您按 F5 时,vscode
会将此文件视为起点。
main_folder
|___ index.js
|___ package.json
您可以手动创建package.json
,也可以使用npm init
创建它。这会向您提出一系列问题,然后为您编写package.json
。
{
"name": "application_name",
"version": "0.0.0",
"description": "for single page debugging",
"main": "index.js",
"author": "",
"license": "ISC"
}
答案 1 :(得分:1)
您可以在Node环境中运行当前文件,而无需创建launch.json。
打开要调试的文件,转到调试器面板,单击绿色箭头,然后选择“节点”作为您的环境。
答案 2 :(得分:1)
要启动(调试)当前打开的/活动的* .js文件,请在launch.json
文件中进行以下配置:
{
"version": "0.2.0",
"configurations": [
{
"type": "node",
"request": "launch",
"name": "Launch Current Opened File",
"program": "${file}"
}
]
}
答案 3 :(得分:1)
为避免任何混乱,调试选项取决于工作空间的设置方式:
如果尚未创建launch.json
文件,则将在调试面板中看到以下选项。单击Run and Debug
将调试当前活动的文件。
如果您有一个package.json
文件,您仍然会看到上面显示的相同视图;但是,VSCode将首先尝试调试在main
的{{1}}属性中指定的文件名。如果找不到该文件,它将调试当前活动的文件。因此,例如,如果我的package.json
将package.json
显示为我的index.js
文件,则VSCode如果可以找到它而不是您当前处于活动状态的文件,它将始终在调试器中运行该文件。 / p>
最后,您可以通过向main
添加配置来更加明确。执行此操作后,您可以从下拉菜单中选择要调试的文件。在我的环境中,我添加了一个选项以能够运行当前活动的文件(下面的JSON中的第一个条目)以及我想快速访问的任何其他文件(下面的JSON中的第二个条目)。现在,下拉菜单将显示这些选项供您选择。
launch.json
有关更多详细信息,请检出Debugging in Visual Studio Code。
答案 4 :(得分:0)
对我来说最简单的方法...
在VS文件浏览器中右键单击该文件。
点击“在终端中打开”。
然后在终端输入node myFile.js