我使用以下工具制作了一个简单的CRUD应用:
- express: 4.13.4
- gulp: 3.9.1
- mongodb :v3.0.6
- reactjs : 15.0.2.
- node : 4.0.0
关于服务器端代码,据我所知可以通过 Visual Studio Code (v1.1.1.) 进行调试。
在 git bash 中,我通过 gulp serve
命令启动应用程序。但是,我不知道要如何开始调试!
以下是我的 gulp 任务代码片段。
gulp.task('serve',['bundle','start-server'],function(){
browserSync.init({
proxy:'http://localhost:3000',
port:9001
});
});
当我们在VS Code上点击调试按钮以启动调试界面时,会出现一个launch.json文件,并提供两个配置选项。
{
"version": "0.2.0",
"configurations": [
{
"name": "Launch",
"type": "node",
"request": "launch",
"program": "${workspaceRoot}",
"stopOnEntry": false,
"args": [],
"cwd": "${workspaceRoot}",
"preLaunchTask": null,
"runtimeExecutable": null,
"runtimeArgs": [
"--nolazy"
],
"env": {
"NODE_ENV": "development"
},
"externalConsole": false,
"sourceMaps": false,
"outDir": null
},
{
"name": "Attach",
"type": "node",
"request": "attach",
"port": 3000,
"address": "localhost",
"restart": false,
"sourceMaps": false,
"outDir": null,
"localRoot": "${workspaceRoot}",
"remoteRoot": null
}
]
}
我猜这些是launch和attach的配置。但我们要如何通过调试实际启动gulp。
我看到过有人通过修改"program"键来启动grunt进程,例如"program": "/usr/local/bin/grunt"
。但似乎我无法为gulp做到这一点。
即使我已经通过git bash启动了我的应用程序,并尝试像这里提到的那样“附加”调试器,vs code仍然显示一个错误消息,说“已取消”!
简而言之;
- 当我们在VS代码中启动调试时,我们如何启动gulp(或)grunt(或)启动服务器?
- 是否可能通过cmd或bash外部启动应用程序,并仍能够使用调试器调试服务器端代码?如果是这样,那么在launch.json中需要进行哪些更改?
outDir
现已弃用。 - Liamnpm run start
或类似于此的命令,具体取决于您的脚本。 - Daniel