1

我正在使用 angular-fullstack 生成器和 Webstorm 10。

node.js 远程调试配置:

 localhost: 127.0.0.1
 port: 5858

当我输入 'grunt serve:debug' 时:

Debugger listening on port 5858
Node Inspector v0.9.2
Visit http://localhost:8080/debug?port=5858 to start debugging.
Express server listening on 9000, in development mode

此时 localhost:8080/debug?port=5858 打开,然后我启动我的 node.js 远程调试器。它说:

 Connected to localhost:5858

然而,框架窗格是完全空白的,并且所有断点都被忽略。

4

1 回答 1

1

那里有多个问题,与 WebStorm、Grunt、Node 本身有关……一般来说,为了能够调试 angular-fullstack 应用程序的服务器端代码,我建议如下:

使用 Node.js 运行配置进行调试:

Working directory: your project root folder
 JavaScript file: path/to/node_modules/grunt-cli/bin/grunt
 Application parameters: serve

将以下行添加到 Gruntfile.js 的顶部;

process.execArgv = [];

这应该可以解决调试 Grunt 子进程的问题——默认情况下,生成的子进程使用与父进程相同的调试端口——结果,分叉的进程被挂起并且应用程序“停止”。此外,打开 node_modules\grunt-express-server\tasks\lib\server.js 并将第 71 行更改为:

options.opts.unshift('--debug-brk');

当使用 --debug 选项而不是 --debug-brk 生成子进程时,WebStorm 调试器并不总是有时间在进程启动时注册断点,因此不会命中子进程中的断点。

为使用 generator-angular-fullstack@2.0.13 生成的应用程序编写说明;你可能有不同的设置...

于 2015-10-28T14:45:42.410 回答