1、直接按F5可以调试的方法或者点击运行按钮(可以直接运行html文件或者js文件)
在launch.json文件中的配置如下:
{
"version": "0.2.0",
"configurations": [{
"name": "谷歌浏览器", //运行html文件,用谷歌浏览器打开
"type": "chrome",
"request": "launch",
"url": "${file}",
"sourceMaps": true,
"webRoot": "${workspaceRoot}"
},
{
"name": "nodeLauch", //单独调试js,即可以直接运行js
"type": "node",
"request": "launch",
"program": "${file}", //这个配置成你要调试的文件、${file}当前打开的文件
"stopOnEntry": false,
"args": [],
"cwd": "${workspaceRoot}",
"runtimeExecutable": null,
"runtimeArgs": [
"--nolazy"
],
"env": {
"NODE_ENV": "development"
},
"console": "internalConsole",
"preLaunchTask": "",
"sourceMaps": false,
"outDir": null
}
]
}
2、第二种方法 Ctrl+Shift+B 快捷键运行html文件,在Tasks.json中配置如下:
{
"version": "0.1.0",
"command": "",
"isShellCommand": false,
"args": ["${file}"],
"showOutput": "always",
"windows": {
"command": "C:/Users/shannonliang/AppData/Local/Google/Chrome/Application/chrome.exe"
},
"tasks": [{
"taskName": "webserver",
"isBuildCommand": true,
"showOutput": "always"
}]
相当于直接使用 node 命令,用 npm run script 脚本 来启动 Node.js 程序是更为常见的场景,比如当目标是运行一个应用。
假设项目的 package.json 有一个用来调试的 debug 脚本:
我们要怎么启动项目的跟踪调试呢?
文档指路 ➡️ 【Node.js 调试入门】 、 【VSCode 中的 Node.js 调试】 、 【Launch 对 npm 及其他工具的配置支持】
VS Code 支持两种核心调试模式 Launch 和 Attach ,Launch 方式是直接以 debug 模式启动应用,并为我们自动添加一个调试器;而 Attach 方式则是将 VSCode 调试器连接到已经运行中的应用程序或进程。我们这里用的是 Launch 方式。
在终端运行:
或点击VSCode 的小甲虫图标:
上面蓝色位置圈错了,应该是第一个 Node.js。
VSCode 十分智能,预设了很多针对不同需求的启动配置:
让我们来做进一步的修改:
之前那个启动配置项可以删除,留下这个需要的即可。
我们将 console 属性 设置为外部终端,我们启动调试时 VScode 就会自动打开下图中对应的终端(根据操作系统)。可以根据个人使用习惯,自定义用什么终端 (比如我在 VSCode 设置的 Terminal › External: Osx Exec,从默认的改为了 iTerm2)。
别忘了先把我们的脚本加上端口
首先,在需要调试的地方打好断点 如上图,点击左侧的行数,158行就可以打上断点了 点击 vscode 左侧的debug窗口,如果你之前没有配置过 launch.json 文件,那么现实效果就会如下图一样。 点击左上方,【没有配置】,添加配置 VSCode本身就内置了Node.js的调试工具,如果将来你需要调试别的东西,可以在这里选择添加对应的调试插件工具。 这里我们调试的是Node.js,就选择Node.js,然后VSCode会在 /.vscode 目录中新建一个 launch.json 文件launch.json 文件新建好后,我们需要进行一些配置操作,这里我们选择的是,附加到进程。 后面我们是先启动egg的调试进程,然后再将vscode附加到进程中的。 这里有一个很关键的节点, program 这个属性写的就是你需要调试的js文件,我这边调试的是刚才打上断点的文件 pledges.js使用 iterm 进入到工程目录,开启调试模式 在VSCode中选择 Attach to Process ,并且选择egg-cluster这个进程。 等请求进入到刚才打断点的地方,VSCode就会自己跳转到调试点啦,然后就可以尽情调试啦~ BTW,如果你有更好,更简单的调试方式请告诉我...