如何在vscode中调试nodejs代码

最近接触了一个前端react,nodejs做转发层的项目,打包部署到服务器上的也不再是纯静态文件了,而是要在服务器上安装node并启动打包后的项目,由于需要在项目中需要debuge nodejs所以记录一下

 

package.json的script如下(关注dev即可):

"scripts": {
    "build": "cross-env NODE_ENV=production TS_NODE_PROJECT=\"tsconfig.webpack.config.json\" webpack --config webpack.config.ts && tsc --build tsconfig.build.json",
    "build:uat": "cross-env NODE_ENV=uat TS_NODE_PROJECT=\"tsconfig.webpack.config.json\" webpack --config webpack.config.ts && tsc --build tsconfig.build.json && mv ./build/server.uat.js ./build/server.js",
    "test:lint": "tslint -c tslint.json '{src,packages}/**/*.{ts,tsx}'",
    "dev": "cross-env NODE_ENV=development SERVER_PORT=3000 CONSOLE_CONFIG=\"config/console.dev.json\" node -r ts-node/register/transpile-only ./server.dev.ts",
    "start": "ts-node ./server.ts"
  },

 

vscode的tasks.json如下(task.json的配置就是为了执行上面的script dev脚本)

{
// 有关 tasks.json 格式的文档,请参见
    // https://go.microsoft.com/fwlink/?LinkId=733558
    "version": "2.0.0",
    "tasks": [
        {
            "type": "npm",
            "script": "dev", //合起来就是npm run dev
            "problemMatcher": []
        }
    ]
}

 

vscode的launch.json如下(launch.json的配置为脚本设置启动参数,如下,在.vscode/launch.json文件中,红色部分设置运行条件,黄色部分配置script脚本)

{
  // 使用 IntelliSense 了解相关属性。
  // 悬停以查看现有属性的描述。
  // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
  "version": "0.2.0",
  "configurations": [
    {
      "type": "node",
      "request": "launch",
      "name": "Launch Program",
      "runtimeArgs": ["-r", "ts-node/register/transpile-only"],
      "env": {
        "NODE_ENV": "development",
        "SERVER_PORT": "3000",
        "CONSOLE_CONFIG": "config\\console.dev.json", //此json配置了启动时的一些项目参数,可选
        "CONSOLE_CONFIG_PATH": "C:\\Users\\jim.hu\\Desktop\\project\\operaconnector-console"
      },
      "args": ["${workspaceFolder}\\server.dev.ts"] //此文件就是项目的启动文件,如启动Koa,再由koa加载前端react资源
    }
  ]
}

 

posted @ 2020-03-13 15:00  jim520  阅读(2735)  评论(0编辑  收藏  举报