Visual Studio 代码断点在使用 TypeScript 的 Node.js 上不起作用

问题描述 投票:0回答:2

我尝试了很多解决方案,但没有人适合我。代码执行,但我无法放置断点并调试它。你能帮我吗?

我尝试了以下 VSCode 配置脚本:

{
      "type": "node",
      "request": "launch",
      "name": "Typescript Node JS",
      "program": "${workspaceFolder}/build/server",
      "preLaunchTask": "npm: build",
      "sourceMaps": true,
      "stopOnEntry": false,
      "internalConsoleOptions": "openOnSessionStart",
      "outFiles": [
          "${workspaceFolder}/out/**/*.js"
      ]
    },
    {
      "name": "ts node",
      "type": "node",
      "request": "launch",
      "args": [
        "${workspaceFolder}/server"
      ],
      "runtimeArgs": ["--nolazy", "-r", "ts-node/register"],
      "sourceMaps": true,
      "cwd": "${workspaceRoot}",
      "protocol": "inspector"
    }
javascript node.js typescript visual-studio-code vscode-debugger
2个回答
8
投票
  1. 将启动脚本添加到package.json

    “脚本”:{ “开始”:“节点./node_modules/.bin/ts-node --./server.ts” }

  2. 单击左侧导航菜单上的调试菜单图标。

  3. 现在单击显示所有自动调试配置。

  4. 现在点击 Node.Js(预览)

  5. 现在 package.json 上的所有脚本都会弹出。选择启动脚本。

  6. 全部完成!!现在断点将按预期工作:)

注意:请确保您拥有最新版本的 VSC,旧版本将无法工作。


0
投票

我检查了所有解决方案,但没有一个适合我的情况。 最后,我清除了“outFiles”行并且它起作用了!

只需注释掉这些行:

  "outFiles": [
      "${workspaceFolder}/out/**/*.js"
  ]
© www.soinside.com 2019 - 2024. All rights reserved.