我正在尝试在Visual Studio Code上调试我的应用程序。我的package.json
上有以下配置:
"scripts": {
"build": "rimraf dist/ && babel ./ --out-dir dist/ --ignore ./node_modules,./.babelrc,./package.json,./npm-debug.log --copy-files",
"start": "npm run build && node --inspect=12345 dist/app.js"
}
我正在Node应用程序上使用ES6,这就是为什么我的build
配置有点混乱的原因。
运行npm start
时一切正常,我可以使用我的应用了。
现在要调试它,我已经设置了以下launch
配置:
"configurations": [
{
"type": "node",
"name": "Attach to Remote",
"request": "attach",
"port": 12345
},
{
"type": "node",
"request": "launch",
"name": "Launch Program",
"program": "${workspaceFolder}\\dist\\app.js"
}
]
他们两个都“工作”:VS Code切换到“调试模式”,但我无法遇到任何断点。它们全部变灰:
我尝试使用this答案进行修复,但无法正常工作...
有帮助吗?
谢谢!
答案 0 :(得分:0)
我正在使用VS Code v 1.28.2,并且能够通过两种方式进行调试。
1)使用内置的调试器(菜单->调试->开始调试)
2)使用node inspect index.js
启动应用程序。在这种情况下,您必须使用debugger;
关键字在代码中声明断点。然后,在调试模式下并在断点处停止时,您可以在命令行中继续输入cont
。
希望有帮助
答案 1 :(得分:0)
我发现我只是从--source-maps
命令中丢失了babel-cli
... -.-
添加后,VSCode可以找到断点。
所以基本上,解决方案是:
将--source-maps
添加到我的构建命令中:
"scripts": {
"build": "rimraf dist/ && babel ./ --out-dir dist/ --ignore ./node_modules,./.babelrc,./package.json,./npm-debug.log --copy-files --source-maps",
"start": "npm run build && node --inspect=12345 dist/app.js"
}
我将launch
配置为如下:
"configurations": [
{
"type": "node",
"request": "launch",
"name": "Launch Program",
"program": "${workspaceFolder}\\dist\\app.js",
"preLaunchTask": "npm: build"
}
]
希望它对某人有帮助!