进阶 electronjs.org 2026-10-07 23:51:43 · 6 阅读
第2章 应用调试
# 第2章:应用调试
当 Electron 应用的表现不符合预期时,有一系列调试工具可以帮你找出代码错误、性能瓶颈或可优化的地方。
渲染进程
调试单个渲染进程最全面的工具是 Chromium Developer Toolset。它适用于所有渲染进程,包括 BrowserWindow、BrowserView 和 WebView 的实例。可以通过在实例的 webContents 上调用 openDevTools() API 以编程方式打开:
const { BrowserWindow } = require('electron')
const win = new BrowserWindow()
win.webContents.openDevTools()
Google 为开发者工具提供了完善的文档,建议你花时间熟悉一下——它们通常是每个 Electron 开发者工具箱中最强大的工具之一。 主进程 调试主进程要麻烦一些,因为无法为它打开开发者工具。得益于 Google / Chrome 与 Node.js 的深度合作,Chromium Developer Tools 也可以用来调试 Electron 的主进程,但你可能会遇到一些奇怪的情况,比如控制台里没有 require。 更多信息请参阅「调试主进程」文档。 V8 崩溃 如果 V8 上下文崩溃,DevTools 会显示如下消息: DevTools was disconnected from the page. Once page is reloaded, DevTools will automatically reconnect. 可以通过设置 ELECTRON_ENABLE_LOGGING 环境变量来启用 Chromium 日志,详见环境变量文档。 也可以在命令行传入 --enable-logging 参数,详见命令行开关文档。
const win = new BrowserWindow()
win.webContents.openDevTools()
Google 为开发者工具提供了完善的文档,建议你花时间熟悉一下——它们通常是每个 Electron 开发者工具箱中最强大的工具之一。 主进程 调试主进程要麻烦一些,因为无法为它打开开发者工具。得益于 Google / Chrome 与 Node.js 的深度合作,Chromium Developer Tools 也可以用来调试 Electron 的主进程,但你可能会遇到一些奇怪的情况,比如控制台里没有 require。 更多信息请参阅「调试主进程」文档。 V8 崩溃 如果 V8 上下文崩溃,DevTools 会显示如下消息: DevTools was disconnected from the page. Once page is reloaded, DevTools will automatically reconnect. 可以通过设置 ELECTRON_ENABLE_LOGGING 环境变量来启用 Chromium 日志,详见环境变量文档。 也可以在命令行传入 --enable-logging 参数,详见命令行开关文档。