最近使用electron开发了一套软件,记录一下遇到的调试问题node
vscode 官网连接;git
electron,本次所使用的版本为:github
Electron: 1.7.9web
Node: 7.9.0typescript
Chromium: 58.0.3029.110json
V8: 5.8.283.38electron
本次直接使用的 electron-quick-start git连接工具
nodejs 官网连接;开发工具
"scripts": { //debug 表示项目需挂载调试程序 //brk 表示项目在启动后,运行第一行代码自动暂停 //5858 表示调试监听端口,若被占用,可自行更改 "start": "electron . --debug-brk=5858" }
{ "name": "Launch", "type": "node", "request": "launch", //程序启动文件,默认为 "${workspaceRoot}/main.js" "program": "${workspaceRoot}/dist/main.js", "stopOnEntry": false, "args": [], "cwd": "${workspaceRoot}", "runtimeExecutable": "${workspaceRoot}/node_modules/.bin/electron", "runtimeArgs": [ ".", "--enable-logging" ], "env": {}, //该属性为配置typescript调试,若不须要则设置为false "sourceMaps": true }
打开调试界面ui
下拉左上角调试列表
选择Launch,若在上一步设置为其余名称,则此时亦跟随修改
electron 中仅支持主进程调试。即:您须要将逻辑代码放置于 main.js 中调用,才可以使用断点等功能,且此时不支持 console 打印输出功能。
渲染进程,包括初始的 BrowserWindow ,没法经过断点调试nodejs代码,仅能够经过窗体自带的开发工具(Ctrl + Shift + I)调试代码。即:使用 require 引入的文件仅支持 console 打印输出至输出窗口,正常web逻辑代码,能够使用断点等进行调试。
建议node端代码在主进程中运行调试,肯定无误后再引入渲染进程中,减小调试工做难度。