typescript - 在 VS Code 中调试 TypeScript 改为使用 JavaScript
问题描述
我正在尝试使用以下launch.json在VS Code中调试我的打字稿NodeJs应用程序:
{
"version": "0.2.0",
"configurations": [
{
"type": "node",
"request": "launch",
"name": "Launch Program",
"skipFiles": [
"<node_internals>/**"
],
"program": "${workspaceFolder}/apps/file-server-app/app.ts",
"outFiles": [
"${workspaceFolder}/build/**/*.js"
],
"runtimeArgs": [
"--require",
"ts-node/register"
]
}
]
}
应用程序启动正常,除断点外,一切正常。我在 Typescript 代码中放置断点,而不是在实际行上停止,而是在编译的 Javascript 等效项中的行上中断。
我尝试过的事情:
- 启用源映射并确保它们生成正确
- 启用在线源映射并确保它们生成正确
- 在新设置上重新安装所有内容
附加信息:
VSCode Version: 1.46.1
TypeScript Version: 3.8.3
解决方案
原来这是在 VS Code 的设计中设计的。
要修复它,您可以:
- 将
outFiles
您的 launch.json 设置为一个空数组,这样就不会发现源映射并且不会发生路径重定向。 - 或删除 ts-node 并调试已编译的文件,或使用 ts-node 而不手动编译它们。
有关更多详细信息,请参阅此 github 问题: https ://github.com/microsoft/vscode/issues/101927
推荐阅读
- scala - 根据列表中定义的列过滤数据框
- android - 如何在 android 中使用 MFCC TarsosDSP 和麦克风
- python - Python ncurses addstr 预期字节或 str,得到 int
- grails - 在列表中包含的值中定义固定位置
- javascript - IF 在地图箭头函数内
- javascript - webpack 文件加载器输出损坏的图像
- r - R中的子集列表
- html - 显示父伪的子属性
- java - AWS RDS 连接数据库错误:com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:通信链路故障
- javascript - 谷歌地图距离矩阵错误“originAddresses”:[“nan,nan”]