我在Visual Studio Code中的TypeScript nodejs应用程序中设置断点时遇到问题。我已按照Visual Studio Code网站上的说明进行操作,但未成功。
这是我的tasks.json:
{
"version": "0.1.0",
"command": "tsc",
"isShellCommand": true,
"showOutput": "always",
"args": ["-p", "src"],
"problemMatcher": "$tsc"
}
这是我的tsconfig.json:
{
"compilerOptions": {
"target": "es5",
"module": "commonjs",
"moduleResolution": "node",
"sourceMap": true,
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"removeComments": false,
"noImplicitAny": false
},
"exclude": [
"node_modules"
]
}
看起来好像正在生成源地图;但是试图在任何TypeScript文件中放置一个断点会产生一个灰色的圆圈......是什么给出了?我错过了什么?
答案 0 :(得分:1)
你还需要告诉VSCode在你的launch.json文件中使用sourceMaps(它应该位于.vscode / launch.json下),你应该有类似的东西:
"configurations": [
{
"name": "Launch",
"type": "node",
"request": "launch",
"program": "path/to/your/main.ts",
"stopOnEntry": false,
"args": [],
"cwd": ".",
"runtimeExecutable": null,
"runtimeArgs": [
"--nolazy"
],
"env": {
"NODE_ENV": "development"
},
"externalConsole": false,
"sourceMaps": true
},
希望这有帮助。
答案 1 :(得分:1)
您需要提供VS Code的源映射,以精确定位与JavaScript代码对应的TypeScript代码行。如果您在sourceMap
中将true
设置为tsconfig.json
,则可以由TypeScript编译器自动生成源地图。
您可以尝试this starter code on GitHub,它是为了在VS Code中设置断点而构建的。