几种 Node 代码断点调试方式

@GuoYongfeng 2018-12-19 03:38:25发表于 iuap-design/blog

使用 node 自带的 debugger 模块

$ node debug app.js

使用 node-inspector 调试

$ npm install -g node-inspector

开启服务

$ node-inspector
# 或者
# node-debug app.js

使用 vscode IDE

node-inspector虽好,项目已大特别慢,这方面vsc做了不少优化。

主要配置项目中.vscode 目录下的 launch.json 文件:

{
    // 使用 IntelliSense 了解相关属性。 
    // 悬停以查看现有属性的描述。
    // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "type": "node",
            "request": "launch",
            "name": "Launch via NPM",
            "runtimeExecutable": "npm",
            "runtimeArgs": [
                "run-script",
                "debug"
            ],
            "port": 9229
        },
        {
            "type": "node",
            "request": "launch",
            "name": "调试node服务",
            "program": "${workspaceFolder}/app.js"
        }
    ]
}

然后点击左侧爬虫一样的图标:

image

然后启动调试:
image

Chrome DevTools与Node.js Debugger结合

如何使用 Chrome 调试?简单太方便(大项目的效率问题且放在一边)

1、执行 node --inspect app.js,然后,浏览器中访问:http://localhost:3000/
2、来到浏览器控制台,点击这个按钮。

image

3、浏览器中对node源码打断点

image

4、控制台中直接看变量信息。

image