我正在使用 Visual Studio Code 1.17 版,我的目标是调试 当前的 打字稿文件。我有一个构建任务正在运行,所以我总是有一个相应的 javascript 文件,如下所示:
src/folder1/folder2/main.ts
src/folder1/folder2/main.js
我尝试使用以下 launch.json 配置:
{
"type": "node",
"request": "launch",
"name": "Current File",
"program": "${file}",
"console": "integratedTerminal",
"outFiles": [
"${workspaceFolder}/${fileDirname}**/*.js"
]
}
但我收到错误: Cannot launch program '--full-path-to-project--/src/folder1/folder2/main.ts' because corresponding JavaScript cannot be found.
但是对应的JavaScript文件是存在的!
tsconfig.json:
{
"compileOnSave": true,
"compilerOptions": {
"target": "es6",
"lib": [
"es2017",
"dom"
],
"module": "commonjs",
"watch": true,
"moduleResolution": "node",
"sourceMap": true
// "types": []
},
"include": [
"src",
"test"
],
"exclude": [
"node_modules",
"typings"
]}
原文由 DauleDK 发布,翻译遵循 CC BY-SA 4.0 许可协议
您的
outFiles
的配置指向了错误的目录。用这个替换你的
launch.json
配置将修复它:来自 vscode launch.json 变量参考:
应该是你需要的目录。
请注意,您还可以使用
"outFiles": ["${fileDirname}/**/*.js"]
来包含子目录。您使用的配置添加了以下目录:
这转化为类似的东西:
即到根的路径在那里两次,使其成为无效路径。
如果您的 .js 文件位于不同的
outDir
:只需使用此类目录的路径。 TypescriptsourceMaps
将完成剩下的工作。例如,如果您将
.js
文件放在dist
目录中: