如何使用node-inspector调试Sails.js应用程序?

问题描述 投票:11回答:5

为了使用node-inspector进行调试,我需要使用node --debug命令启动我的应用程序。到目前为止,我只使用sails lift启动我的Sails.js应用程序,所以我不确定如何使用正常的node命令启动我的应用程序。

node.js sails.js
5个回答
7
投票

从Sails v0.10.x开始,你可以用sails debug代替sails lift


9
投票

因此,如果您在项目中安装了sails,那么您实际上可以使用node app.js --debug启动sails项目,而不是仅在系统范围内。转到项目的根目录并运行npm install。 Sails应该已经在你的package.json中,因此应该安装到你的项目目录中。


1
投票

您是否尝试过使用node-webkit来运行node.js应用程序?这是我们在工作中用于调试node.js服务器应用程序的内容。它是非常有用的基于铬的运行时,您可以使用熟悉的断点,堆栈跟踪,变量检查等来检查您的代码,而不必依赖节点检查器(我觉得很难用它来说实话)。

您所做的不是使用控制台命令'node you-app.js'而是设置node-webkit来启动您的应用程序,运行webkit然后打开它的控制台(这与Chrome浏览器中的控制台相同)并从那里开始可以像打开任何其他客户端JavaScript代码一样打开源文件并开始调试。


1
投票

sails inspect自Sails v1.0以来

从sails v1.0开始,对于较新的Node.js,不推荐使用sails debug,而应该使用sails inspect

这记录在:https://sailsjs.com/documentation/reference/command-line-interface/sails-inspect,可能是为了匹配更新的node --inspect界面。


1
投票

node inspect

您还可以使用命令行调试器:

node inspect app.js

这在开始时停止,所以继续:

c

现在,当你的代码带有声明时:

debugger

执行后,您会照常进入Node CLI调试器。

在Sail v1.1,Node v10.15.1,Ubuntu 18.10上测试。

nodemon --inspectnodemon inspect

您可以使用这些来检查使用nodemon,它会自动重新加载应用程序的文件保存:Auto reloading a Sails.js app on code changes?

这些选项类似于node inspectnode --inspectnode inspect适用于debugger语句,node --inspect适用于Chrome调试器。

特别适用于“Open Open DevTools for Node”功能:Can I get node --inspect to open Chrome automatically

nodemon inspect有点烦人,因为每次你做任何应用程序更改它需要一个continue并且nodemon重新启动服务器。 TODO找到了解决方法。

© www.soinside.com 2019 - 2024. All rights reserved.