我已经安装了node-inspector,以发现它不支持断点:|它有什么意义,请记住,大部分节点代码是异步的,你根本无法一步一步地遵循它?...
我在这里肯定错过了一点...
无论如何使用断点和所有内容调试节点代码?
答案 0 :(得分:18)
yupp,我已经成功使用了节点检查器。如果您想要永久断点,只需在代码中插入debugger;
即可。请参阅http://nodejs.org/api/debugger.html。
使用node --debug-brk script.js
使节点等到连接调试器后,也非常有帮助。
答案 1 :(得分:3)
(对于节点8及更高版本)
Node.js具有内置的调试器。通常,您可以通过两种方式打开调试器:
使用--inspect
或--inspect-brk
开关启动Node.js应用或脚本。例如:
$ node.js --inspect index.js
(注意:--inspect-brk
在用户代码启动之前中断)
如果由于某些原因您无法使用--inspect
开关启动Node.js应用或脚本,则仍然可以通过用SIGUSR1发出信号来指示Node.js进程开始侦听调试消息(在Linux和OS X上)。对于Node 8及更高版本,它将激活Inspector API,与--inspect开关一样
$ kill -sigusr1 23485
(注意:您需要用自己的Node.js进程ID替换23485)
打开调试器后,您可以打开Google Chrome浏览器,然后在地址栏中输入chrome://inspect
然后,您应该在“远程目标”下看到一个条目。继续,然后单击“检查”。
现在您可以设置断点并开始调试代码。
参考:
答案 2 :(得分:1)
在这里详细说明一下:
在需要断点的地方设置调试器,然后使用node debug script.js / index.js运行代码
当调试器在断点处停止时,您需要重新检查以检查变量。
答案 3 :(得分:0)
要调试Node js应用程序,可以使用调试内置模块
在要插入断点的地方插入debugger;
语句
使用命令node inspect index.js
按C键继续到下一个断点
您甚至可以通过键入repl
有关更多信息,请参阅https://nodejs.org/api/debugger.html
答案 4 :(得分:0)
您是否尝试过使用nodemon
库? it can be found here。
出于开发目的,您可以启动运行nodemon的应用程序。我有这个脚本:
"dev": "nodemon --inspect src/index.js"
只要在代码中到达debugger
语句,它就会中断。要打开可查看服务器代码的控制台,请以chrome打开控制台,然后单击nodejs图标:
它还可以帮助您每次在服务器上保存任何文件时刷新服务器。
让我知道它是否有效!