【问题标题】:Debug node.js web application that has been launched via a Gulp task调试已通过 Gulp 任务启动的 node.js Web 应用程序
【发布时间】:2017-01-12 03:13:51
【问题描述】:
我有一个用 node.js 编写的 Web 应用程序,并使用 gulp 命令启动。当应用程序第一次启动时,在服务器运行之前,调试点可能会在 WebStorm(或任何 IDE 或命令行工具)中命中。但是,在服务器运行后,我转到本地主机中的界面后,我无法再点击应用程序内的调试点。这不是由客户端代码引起的,因为调试点位于服务器代码中。
我已经阅读了涉及使用节点检查器的答案,但由于在节点检查器中启动调试器时未读取配置文件,因此并没有解决我的问题。
我有点惊讶,这里关于这个问题的内容如此之少。这不是其他开发人员面临的正常问题吗?提前感谢您的帮助。
【问题讨论】:
标签:
node.js
debugging
gulp
webstorm
【解决方案1】:
我的解决方法可能不适用于每种情况。我正在修改 JavaScript 文件,实际上并不需要配置文件,在加载后就能够测试我的更改。我做了以下事情:
在我的 app.js 文件中写了一行来设置我需要的变量。 (这些本来是在 Gulp 中运行的任务)
然后我将该应用程序作为 Node.js 应用程序启动,并且能够正常调试它。
如果我的任何视图已更新,或者任何其他由 Gulp 管理的内容,那么我可以简单地停止服务器,通过 Gulp 命令再次启动它,然后再次停止并作为 Node.js 重新启动应用程序。
这并没有解决我的 OP 中的问题,但它是一个足够好的解决方法,可以在 JavaScript 中获取调试点。