使用Typescript调试VS Code显示已转译的变量名称,而不是真实名称

时间:2019-06-19 13:42:54

标签: javascript node.js typescript visual-studio-code

我正在努力寻找正确的配置,以便VS Code可以向我显示调试的真实变量名。

VS Code screenshot

在所附的图像中,我应该能够看到conn(例如)变量,但是调试器正在显示已编译的版本exports.conn

//tsconfig.json
{
    "compilerOptions": {
        "baseUrl": ".",
        "target":"es6",
        "module":"commonjs",
        "noImplicitAny": false,
        "removeComments": true,
        "preserveConstEnums": true,
        "sourceMap": true,
        "outDir": "dist",
        "moduleResolution": "node",
        "allowJs": false,
        "allowSyntheticDefaultImports": false,
        "esModuleInterop": false,
        "jsx": "react"
    },
    "include": [
        "web/**/*",
        "logger/**/*",
        "controller/**/*",
        "config/**/*",
        "**/*.ts"

    ]
}
// VS Code launch.json
      ...
               {
            "type": "node",
            "request": "launch",
            "name": "Launch Program",
            "program": "${workspaceFolder}/app.ts",
            "console": "integratedTerminal",
            "outFiles": ["${workspaceFolder}/dist/**/*"]
        }

更新:我不认为这是VS Code问题。如果我使用node dist/app从终端运行该应用程序并获得堆栈跟踪,它不会指向原始TS文件,而是指向已编译的JS文件。

SyntaxError: Unexpected end of JSON input
    at JSON.parse (<anonymous>)
    at new Config (/Users/zzz/Documents/programming/dist/config/Config.js:10:56)
    at Object.<anonymous> (/Users/zzz/Documents/programming/dist/config/Config.js:43:18)

更新2: 我通过将require('source-map-support').install();移到我的第一个导入中来解决CLI问题。现在,CLI输出确实显示了通过.ts文件返回的正确行/堆栈跟踪,但是VS Code中仍然存在相同的问题。

0 个答案:

没有答案