Tot*_*.js 39 debugging 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
没有人能回答这个问题?:■
Jau*_*uco 26
在javascript中,您可以使用该debugger;语句设置断点.但是,如果实际连接了调试器,它们将仅暂停节点.
所以使用启动节点脚本
node --debug-brk myfile.js
Run Code Online (Sandbox Code Playgroud)
然后启动node-inspector并按下播放按钮继续到下一个断点,它将debugger;到达你的断点(至少那对我有用)
(如评论中所述:在最近版本的节点中,您不再需要单独安装node-inspector.如果使用启动节点,node --debug-brk --inspect myfile.js则会获得一个在浏览器中启动调试器的URL).
重启后仍然需要额外点击一次,但至少保存了断点.
如果你的断点没有被自动命中,但只有在用户采取一些操作后你--debug-brk当然不需要.
客户端断点的问题在于,当文件更改时很难跟踪断点位置.与编辑器不同,它无法跟踪被更改的行等.
@RyanOlds建议使用调试器; 语句也是一个很好的语句,但是在评估语句之前必须确保调试器已连接,否则会被忽略.从--debug-brk开始是一种强制执行此操作的好方法,因为执行在第一行暂停,允许您附加调试器然后继续执行.
您可以尝试使用节点的内部调试器进行调试.
编辑:但是,根据v8 DebuggerProtocol,可以在尚未加载的脚本上设置断点,并且可以按功能,脚本等设置断点.因此,节点检查器应该可以跟踪您的断点(在会话中或其他任何情况).但是现在它没有这样做.
也许如果v8允许某段代码触发断点,类似于节点调试器?编辑:确实如此,您应该能够通过抛出任何旧的异常(捕获或未捕获)来触发中断.
| 归档时间: |
|
| 查看次数: |
20543 次 |
| 最近记录: |