[英]How to debug nodeJS (ExpressJS) app in visual studio code?
我已经尝试了许多不同的在线解决方案,但在我的情况下没有任何效果,我试图在运行时调试 nodeJS 应用程序,通过 UI/postman 调用 API
我的launch.json:从这里获取指南
{
"type": "node",
"request": "attach",
"name": "Attach by Process ID",
"processId": "${command:PickProcess}",
"skipFiles": [
"<node_internals>/**"
]
}
启动本地服务器后,当我启动调试器时,它要求选择一个进程,我 select 以--exec babel-node server.js
结尾的那个它连接成功,但没有加载我的项目脚本,只有 node_modules、eval 和 node_internal .
在我的代码中,如果我放置断点,我会看到这个错误“断点已设置但尚未绑定”
我的 package.json 启动脚本:
"scripts": {
"start": "nodemon --exec babel-node server.js"
}
我的代码在 ES6 中,我通过 shell 脚本启动服务器,该脚本首先设置一些环境,然后执行npm start
我的.bablerc
{
"presets": [
[
"@babel/preset-env",
{
"targets": {
"node": "current"
}
}
]
]
}
这是我的launch.json,我用express运行nodejs,它工作正常。
{
"version": "0.2.0",
"configurations": [
{
"type": "node",
"request": "launch",
"name": "Launch Program",
"program": "${workspaceFolder}/app.js",
"args": ["--env","local"]
}
]
}
原来我选择了错误的进程 ID。 当我们启动调试器时,它会显示正在运行的进程列表到 select 将附加调试器。 我选择了以_babel-node server.js
而不是--exec babel-node server.js
结尾的那个。 这样做会加载我的所有脚本并按预期开始工作。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.