Node.js 如何使用ts node dev和正确的行号调试Visual Studio代码中的Typescript代码

Node.js 如何使用ts node dev和正确的行号调试Visual Studio代码中的Typescript代码,node.js,typescript,visual-studio-code,source-maps,Node.js,Typescript,Visual Studio Code,Source Maps,我有一个Typescript项目,其启动如下: ts-node-dev --preserve-symlinks --inspect=0.0.0.0 -- src/server.ts 我可以用VisualStudio代码调试它,但调试器在错误的行中断。我能想到的唯一合理解释是,ts节点开发人员没有将调试器指向源映射(在那里) 如何正确调试ts节点开发人员执行的Typescript代码?我也有同样的问题,这让我想到了这篇(旧)文章。我在找到了我的问题的解决方案,所以我把它贴在这里,以防其他人发

我有一个Typescript项目,其启动如下:

ts-node-dev  --preserve-symlinks --inspect=0.0.0.0  -- src/server.ts
我可以用VisualStudio代码调试它,但调试器在错误的行中断。我能想到的唯一合理解释是,ts节点开发人员没有将调试器指向源映射(在那里)


如何正确调试ts节点开发人员执行的Typescript代码?

我也有同样的问题,这让我想到了这篇(旧)文章。我在找到了我的问题的解决方案,所以我把它贴在这里,以防其他人发现自己在这里

此VS代码配置允许我在TypeScript代码的正确行上的断点处停止:

{
  "version": "0.2.0",
  "configurations": [
    {
      "name": "Example",
      "type": "node",
      "request": "launch",
      "runtimeExecutable": "node",
      "runtimeArgs": ["--nolazy", "-r", "ts-node/register/transpile-only"],

      "args": ["src/script.ts", "--example", "hello"],
      
      "cwd": "${workspaceRoot}",
      "internalConsoleOptions": "openOnSessionStart",
      "skipFiles": ["<node_internals>/**", "node_modules/**"]
    }
  ]
}
{
“版本”:“0.2.0”,
“配置”:[
{
“名称”:“示例”,
“类型”:“节点”,
“请求”:“启动”,
“runtimeExecutable”:“节点”,
“runtimeArgs”:[“--nolazy”、“-r”、“仅ts节点/寄存器/传输文件”],
“args”:[“src/script.ts”,“--example”,“hello”],
“cwd”:“${workspaceRoot}”,
“internalConsoleOptions”:“openOnSessionStart”,
“SkipFile”:[“/**”,“节点\模块/**”]
}
]
}