本文主要介绍nodejs的各种姿态断点的调试方法。这篇文章给大家讲的很详细,对大家的学习或者工作都有一定的参考价值。有需要的朋友可以参考一下。
Nodejs通过传递参数-inspect或- inspect-brk启动调试模式,调试方式分为IDE和chrome devtools。下面详细解释如何用这两种方法调试节点程序;
part1:VS Code调试:
一、launch.json 配置
详细配置见另一篇文章:vscodelaunch.json详细配置。
关于VSCode launch.json中各种替代变量的含义$ { workspace folder } $ { file } $ { file basename } $ { file dirname }等。
1 nodejs调试:
1.1单击添加配置文件。
我们看到vscode/launch.json的configurations.program属性是“$ { workspaceFolder }/express-app . js”,表示调试的入口文件,其中Workspace Folder
是vscode explorer的根目录。
1.2开始调试
单击绿色箭头开始调试。
2. 调试npm scripts
在实际项目中,命令基本上都放在npm脚本Tps中。PS:注意,在调试NPM脚本时,参数- inspect必须指定端口。
2.1添加npm脚本
{
.
脚本:{
.
调试: node - inspect-brk=6666 index.js
},
.
}
666是任何指定的调试端口号。
2.2修改vscode调试配置
打开vscode/launch.json删除程序属性,添加以下三个配置项:runtimeExecutable、runtimeArgs、port。
{
.
配置:[
{
.
RuntimeExecutable: npm ,//默认为node,此处改为npm。
runtimeArgs: [
运行脚本,//别名运行
调试“/”对应于上npm脚本的调试
],
端口:6666 //调试端口
}
]
}
2.3开始调试
启动方法同上。
3. 调试非node命令
3.1节点_模块/。箱子
Mrun会自动添加node_module/。绑定到当前命令中使用的路径变量,例如:
{
.
脚本:{
“构建”:“网络包”
},
.
}
运行npm run build实际上是调用node_modules/。bin/webpack,并运行node_modules/。bin/webpack实际上是根据当前的shell环境调用相应的脚本。可以看到有三个脚本名称相同但后缀不同:webpack(标有executable sh)、webpack.cmd和webpack.ps1比如在cmd命令行工具下会调用webpack.cmd脚本。查看代码,您可以看到内部实际上是调用命令:
节点。/node _ modules/web pack/bin/web pack . js
3.2 - inspect-brk不能直接添加。
在这种情况下,直接添加-inspect-brk=6666是不可接受的。以下配置将自动执行npm运行调试,但不会进入断点。
{
.
脚本:{
调试: webpack - inspect-brk=6666
},
.
}
3.3转换为节点调用
修改npm脚本:
{
.
脚本:{
调试: node - inspect-brk=6666。/node _ modules/web pack/bin/web pack . js
},
.
}
成功启动!
3.4停止输入
设置configuration s . stoponentry=true,开始调试后断点可以自动停在第一行代码。
二、attach 附加到node.js
1.自动附加是不需要配置就自动附加的,所以要快速开始调试。
打开用户设置,修改“debug . node . auto attach”:“on”,并打开自动附加。
vscode集成终端输入节点-inspect-brkindex.js
自动进入vscode的调试模式;
2.设置“附加”配置。
与自动附加相比,您可以显式配置各种调试配置选项。配置示例如下:
{
名称:附加到进程,
类型“:”节点,
请求:附加,
processId : $ { command:pick process }
},
启动步骤:
1.命令行在调试模式下运行nodejs程序。
node - inspect-brk索引. js
2.选择并运行其他配置。
3.选择要附加的进程并开始调试。
第2部分:Chrome DevTools调试:
Chrometools是nodejs自然支持的调试方法。使用以下步骤:
1.命令行在调试模式下运行nodejs程序。
node - inspect-brk索引. js
2.打开谷歌Chrome,访问chrome://inspect/#devices,可以看到当前浏览器监控的所有检查。3.点击下面红框中的超链接,Chrome DevTools面板就会打开,你可以使用它的各种功能。
Vscode远程调试插件:远程开发
总结
关于nodejs的各种姿态断点的调试方法,本文到此为止。更多nodejs断点的相关调试内容,请搜索我们之前的文章或者继续浏览下面的相关文章。希望大家以后能多多支持我们!