如何正确使用节点检查器调试node.js?
我有一个在node.js中构建的应用程序,我使用节点检查器进行调试。 但这很难,因为:
你如何真正使用节点检查器调试node.js?
关于如何使用node.js的视频很容易让人误解,因为一切都在模块中......
http://www.youtube.com/watch?v=AOnK3NVnxL8
或者这个脚本出现的脚本已经加载到第一个脚本中
http://www.youtube.com/watch?v=HJOH0-g8f6E&feature=mfu_in_order&list=UL
编辑:
没人能回答这个问题吗? :■
在JavaScript中,您可以使用debugger;
设置断点debugger;
声明。 但是,如果实际连接了调试器,它们只会暂停节点。
所以使用启动你的节点脚本
node --debug-brk myfile.js
然后启动节点检查器并按下播放按钮以继续下一个断点,它会触发您的debugger;
断点(至少适用于我的ATM)
(正如在评论中指出的那样:在最近版本的节点中,您不再需要单独安装节点检查器。如果使用node --debug-brk --inspect myfile.js
启动节点,则会获得一个URL,用于启动您的调试器浏览器)。
重新启动后仍需要额外点击一次,但至少可以保存您的断点。
如果你的断点没有被自动命中,但是只有在某些用户操作之后,你才不需要--debug-brk
。
客户端断点的问题在于,在文件更改时很难跟踪断点位置。 与编辑器不同的是,它不能跟踪被更改的行等。
@RyanOlds使用调试器的建议; 语句也很好,但在评估语句之前必须确保调试器已连接,否则将被忽略。 从--debug-brk开始是一种强制执行的好方法,因为第一行的执行暂停,允许您附加调试器,然后继续执行。
您可以尝试使用节点的内部调试器进行调试。
编辑:但是,根据v8 DebuggerProtocol,可以在尚未加载的脚本上设置断点,并且可以通过函数,脚本等设置断点。 因此,节点检查员应该能够跟踪你的断点(在一个会话中,或其他)。 但是,现在它并没有这样做。
也许如果v8允许某段代码触发一个断点,类似于节点调试器? 编辑:它的确如此,你应该能够通过抛出任何旧的异常(被捕获或未被捕获)来触发中断。
节点检查器的新版本(0.3.x)在浏览器本地存储器中保存断点并自动恢复它们。
https://github.com/node-inspector/node-inspector/pull/116
链接地址: http://www.djcxy.com/p/52645.html