调试nodejs有很多方式可以看这一篇,其中我最喜欢使用的还是V8 Inspector和vscode的方式
在vscode中,点击那个蜘蛛的按钮
就能看出现debug的侧栏接下来添加配置
启动的时候,选择相应的配置然後点击指向右侧的绿色三角
当request
为launch时,就是launch模式了这是程序是从vscode这里启动的,如果是在调试那将一直处于调试的模式而attach模式,是连接已經启动的服务比如你已经在外面将项目启动,突然需要调试不需要关掉已经启动的项目再去vscode中重新启动,只要以attach的模式启动vscode可以连接到已经启动的服务。当调试结束了断开连接就好,明显比launch更方便一点
很多时候我们将很长的启动命令及配置写在了package.json
的scripts
中,比如
我们唏望让vscode使用npm的方式启动并调试这就需要如下的配置
"port": 9229 //这个端口是调试的端口,不是项目启动的端口
仅仅使用npm启动虽然在dev
命令中使用了nodemon,程序也可以正常的重启可重启了之后,调试就断开了所以需要让vscode去使用nodemon启动项目。
注意这里的runtimeArgs
如果这些配置是写在package.json
中的话,就是这樣的
这样就很方便了项目可以正常的重启,每次重启一样会开启调试功能
可是,我们并不想时刻开启调试功能怎么办
这就需要使用仩面说的attach模式了。
使用如下的命令正常的启动项目
当我们想要调试的时候在vscode的debug中运行如下的配置