Electron 应用调试指南:高效利用 Chrome 开发者工具和 VS Code
本文介绍如何高效调试 Electron 应用,涵盖渲染进程和主进程的调试方法。
核心要点
BrowserWindow.openDevTools()
方法访问。渲染进程调试
图1:Chrome 开发者工具在渲染进程中的使用与浏览器应用相同。
Electron 应用默认菜单提供打开 Chrome 开发者工具的命令。您也可以自定义菜单并移除此功能。
图2:Electron 默认菜单中可切换开发者工具。
此外,您可以使用 macOS 上的 Cmd Opt I
或 Windows/Linux 上的 Ctrl Shift I
快捷键,或通过 BrowserWindow
实例的 webContents.openDevTools()
方法以编程方式打开开发者工具。
app.on('ready', () => { mainWindow = new BrowserWindow(); mainWindow.loadURL(`file://${__dirname}/index.html`); mainWindow.webContents.openDevTools(); mainWindow.on('closed', () => { mainWindow = null; }); });
代码示例:在主窗口加载后以编程方式打开开发者工具。
主进程调试
主进程调试较为棘手,Node Inspector 的支持有限。虽然可以使用 --debug
参数启动 Electron 应用以启用远程调试(默认端口 5858),但官方文档中对 Node Inspector 的支持也并非完全完善。
使用 VS Code 调试主进程
VS Code 是一个免费的开源 IDE,本身也是基于 Electron 构建的,它提供了强大的 Node 应用调试工具,非常适合调试 Electron 应用。
快速设置构建任务:在 Windows 上按 Ctrl Shift B
,在 macOS 上按 Cmd Shift B
,VS Code 会提示您创建构建任务(如图 3 所示)。
图3:如果没有构建任务,触发构建任务会提示创建。
您也可以按 Ctrl Shift P
(Windows)或 Cmd Shift P
(macOS)打开命令面板,输入“Task”,然后选择“Select Tasks: Configure Task Runner”,这会在 .vscode
文件夹下创建一个 tasks.json
文件并打开它。
在各个平台上设置构建和调试任务的方法类似,但 electron-prebuilt
在不同操作系统上生成的预构建二进制文件名称有所不同:Windows 上为 electron.exe
,macOS 上为 Electron.app
,Linux 上为 electron
。
app.on('ready', () => { mainWindow = new BrowserWindow(); mainWindow.loadURL(`file://${__dirname}/index.html`); mainWindow.webContents.openDevTools(); mainWindow.on('closed', () => { mainWindow = null; }); });
请将 <name-of-binary>
替换为您系统的相应名称。
现在,当您按下 Windows/Linux 上的 Ctrl Shift B
或 macOS 上的 Cmd Shift B
时,您的 Electron 应用将启动。这不仅对于在 VS Code 中设置调试至关重要,而且也是启动应用的一种便捷方式。下一步是设置 VS Code 以启动应用并连接到其内置调试器。
连接到调试器
图4:在调试面板中,单击齿轮图标,VS Code 将为您创建一个启动调试器的配置文件。
要创建启动任务,请转到左侧面板的“调试”选项卡,然后单击小齿轮(图 4)。VS Code 会询问您要创建哪种类型的配置文件。选择“Node.js”,并将文件内容替换为以下示例配置。
{ "version": "0.1.0", "command": "node_modules/electron-prebuilt/dist/<name-of-binary>", "args": ["lib/main.js"] }
请将 <name-of-binary>
替换为您系统的相应名称。
您可以在这里阅读更多关于启动配置的信息。
有了这两个配置文件,您就可以单击任何行左侧的边距来设置断点,然后按 F5
运行应用程序。执行将在断点处暂停,允许您检查调用栈、查看作用域内的变量以及与实时控制台交互。断点不是调试代码的唯一方法。您还可以监视特定表达式,或者在抛出未捕获的异常时进入调试器。
图5:VS Code 内置的调试器允许您暂停应用程序的执行并深入调查错误。
总结
掌握这些调试技巧,您可以更高效地开发和维护 Electron 应用。
(FAQs 部分已省略,因为原文FAQs与正文内容重复度较高,且篇幅较长,为了避免冗余,这里仅保留核心调试方法的介绍。)
以上是调试电子应用的提示和技巧的详细内容。更多信息请关注PHP中文网其他相关文章!