如何调试Node.js服务器应用程序?
现在,我主要使用如下打印语句的警报调试:
sys.puts(sys.inspect(someVariable));
必须有更好的调试方法。我知道Google Chrome有一个命令行调试器。这个调试器也适用于Node.js吗?
如何调试Node.js服务器应用程序?
现在,我主要使用如下打印语句的警报调试:
sys.puts(sys.inspect(someVariable));
必须有更好的调试方法。我知道Google Chrome有一个命令行调试器。这个调试器也适用于Node.js吗?
当前回答
Node.js中有内置的命令行调试器客户端。Cloud9IDE也有非常好的(可视化)调试器。
其他回答
作为Google Chrome开发者工具的一部分发布的V8调试器可用于调试Node.js脚本。可以在Node.js GitHub wiki中找到这一工作原理的详细说明。
使用--inspect标志启动节点进程。
node--检查index.js
然后打开chrome://inspect镀铬。单击“Open dedicated DevTools for Node”链接或安装此chrome扩展以轻松打开chrome DevTools。
有关详细信息,请参阅此链接
从“文件”->“首选项”->“设置”->“搜索自动附加”并将其设置为“打开”,打开控制台(ctrl+*)或从菜单“终端”->“新建终端”,在代码中设置断点,键入命令
node --inspect <name of your file>
这将启动调试,VS代码将显示调试菜单。
注意:如果使用节点集群工作线程,自动附加也非常有用。
我个人使用JetBrains WebStorm,因为它是我发现的唯一一个适用于前端和后端JavaScript的JavaScript IDE。
它可以在多个操作系统上运行,内置Node.js调试(以及大量其他功能)(http://www.jetbrains.com/webstorm/features/index.html).
我唯一的“问题”/愿望列表项目是:
在Mac上,它似乎比Windows更需要资源。在版本6中,它似乎不再是一个问题。如果它有Snippet支持(就像Sublime Text 2一样),那就太好了。比如,键入“fun”并点击“tab”以放入一个函数。请参阅下面的@WickyNilliams评论-使用Live模板,您也可以支持Snippet。
Visual Studio 2012或2013的Node.js工具包含调试器。这里的概述指出“Node.js Tools for Visual Studio包括对调试节点应用程序的完全支持”。作为Node.js的新手,但我有.NET背景,我发现这个插件是调试Node.js应用程序的一个好方法。