我在typescript中的一个无服务器节点项目中使用VS Code。
直到几天前,调试都运行得很好-断点停止在我添加它的地方,一切都很好。
几天前(可能是由于我的OS、mac或VS代码的某些版本更改),调试器行为开始变得奇怪。
我在TS文件上添加了一个断点:

但如果编译后的文件:(



另一个改变的标志是,我可以在调用堆栈中看到许多“子进程助手”:

在此之前,我只看到TS文件和函数调用断点所在的函数(正如我所期望的)。
我的ts配置如下所示:
{
"compilerOptions": {
"lib": ["es2019"],
"removeComments": true,
"moduleResolution": "node",
"noUnusedLocals": true,
"noUnusedParameters": false,
"sourceMap": true,
"target": "es2017",
"outDir": "lib",
"inlineSources": true,
"resolveJsonModule": true,
"esModuleInterop": true,
"sourceRoot": "/",
"baseUrl": "./",
"paths": {
"@src/*": ["src/*"],
"@tests/*": ["tests/*"],
"@models/*": ["models/*"],
"@managers/*": ["managers/*"],
"@constants/*": ["constants/*"],
"@api-types/*": ["api-types/*"]
}
},
"include": ["./**/*.ts"],
"exclude": [
"node_modules/**/*",
".serverless/**/*",
".webpack/**/*",
"_warmup/**/*",
".vscode/**/*"
]
}我的调试设置如下所示:
{
"version": "0.2.0",
"configurations": [
{
"type": "node",
"request": "launch",
"name": "local",
"program": "${workspaceRoot}/node_modules/serverless/bin/serverless",
"args": [
"offline",
"--noTimeout",
"--stage=dev",
"--region=us-east-1",
"--clustername=us1"
],
"sourceMaps": true,
"runtimeArgs": ["--lazy"],
"outFiles": ["${workspaceFolder}/.webpack/**/*.js"],
"protocol": "inspector",
"runtimeExecutable": "node",
"env": {},
"windows": {
"program": "${workspaceRoot}\\node_modules\\serverless\\bin\\serverless"
},
"outputCapture": "std"
},
]
}发布于 2021-09-13 11:49:31
看起来像是删除了这一行:
"outFiles": ["${workspaceFolder}/.webpack/**/*.js"],来自launch.json修复此问题...
https://stackoverflow.com/questions/69152269
复制相似问题