跳至主要内容

Electron 30.0.0

·阅读时间:4 分钟

Electron 30.0.0 已发布!它包含对 Chromium 124.0.6367.49、V8 12.4 和 Node.js 20.11.1 的升级。


Electron 团队很高兴宣布发布 Electron 30.0.0!您可以通过 npm install electron@latest 使用 npm 安装它,也可以从我们的 版本网站 下载它。继续阅读以了解有关此版本的详细信息。

如果您有任何反馈,请在 TwitterMastodon 上与我们分享,或者加入我们的社区 Discord!错误和功能请求可以在 Electron 的 问题跟踪器 中报告。

显著变化

亮点

堆栈变化

Electron 30 将 Chromium 从 122.0.6261.39 升级到 124.0.6367.49,Node 从 20.9.0 升级到 20.11.1,V8 从 12.2 升级到 12.4

新功能

  • 在 webview 上添加了 transparent webpreference。(#40301)
  • 在 webContents API 上添加了一个新的实例属性 navigationHistory,其中包含 navigationHistory.getEntryAtIndex 方法,使应用程序能够检索浏览历史记录中任何导航条目 的 URL 和标题。(#41662)
  • 添加了新的 BrowserWindow.isOccluded() 方法,允许应用程序检查遮挡状态。(#38982)
  • 添加了对从实用程序进程使用 net 模块进行的请求的代理配置支持。(#41417)
  • 添加了对 navigator.serial 中按服务类别 ID 请求蓝牙端口的支持。(#41734)
  • 添加了对 Node.js NODE_EXTRA_CA_CERTS CLI 标志的支持。(#41822)

重大变更

行为变更:跨域 iframe 现在使用权限策略来访问功能

跨域 iframe 现在必须通过 allow 属性指定提供给给定 iframe 的功能,才能访问它们。

有关更多信息,请参阅 文档

已删除:--disable-color-correct-rendering 命令行开关

此开关从未正式记录过,但无论如何这里都记录了它的删除。Chromium 本身现在对颜色空间有更好的支持,因此不需要此标志。

行为变更:macOS 上的 BrowserView.setAutoResize 行为

在 Electron 30 中,BrowserView 现在是围绕新的 WebContentsView API 的包装器。

以前,BrowserView API 的 setAutoResize 函数在 macOS 上由 自动调整大小 支持,而在 Windows 和 Linux 上则由自定义算法支持。对于简单的用例,例如让 BrowserView 填满整个窗口,这两种方法的行为是相同的。然而,在更高级的用例中,BrowserView 在 macOS 上的自动调整大小与在其他平台上的自动调整大小会有所不同,因为 Windows 和 Linux 的自定义调整大小算法与 macOS 的自动调整大小 API 的行为不完全匹配。现在,自动调整大小的行为在所有平台上都已标准化。

如果你的应用程序使用 BrowserView.setAutoResize 来执行比让 BrowserView 填满整个窗口更复杂的操作,那么你可能已经在 macOS 上为处理这种行为差异编写了自定义逻辑。如果是这样,在 Electron 30 中,这种逻辑将不再需要,因为自动调整大小行为已保持一致。

已删除:WebContentscontext-menuparams.inputFormType 属性

来自 WebContentscontext-menu 事件中 params 对象的 inputFormType 属性已删除。请改用新的 formControlType 属性。

已删除:process.getIOCounters()

Chromium 已删除对该信息的访问权限。

27.x.y 版本不再支持

根据项目的 支持策略,Electron 27.x.y 已不再支持。建议开发者和应用程序升级到更新版本的 Electron。

E30 (2024 年 4 月)E31 (2024 年 6 月)E32 (2024 年 8 月)
30.x.y31.x.y32.x.y
29.x.y30.x.y31.x.y
28.x.y29.x.y30.x.y

下一步

短期内,团队将继续关注 Electron 的主要组成部分,包括 Chromium、Node 和 V8 的开发。

您可以 在这里找到 Electron 的公开时间线

有关未来更改的更多信息,请访问 计划中的重大更改 页面。