跳转到主要内容

Electron 27.0.0

·阅读时长 4 分钟

Electron 27.0.0 现已发布! 它包括对 Chromium 118.0.5993.32、V8 11.8 和 Node.js 18.17.1 的升级。


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

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

堆栈变化

破坏性变更

移除:macOS 10.13 / 10.14 支持

macOS 10.13 (High Sierra) 和 macOS 10.14 (Mojave) 已不再受 Chromium 支持。

旧版本的 Electron 将继续在这些操作系统上运行,但运行 Electron v27.0.0 及更高版本将需要 macOS 10.15 (Catalina) 或更高版本。

弃用:ipcRenderer.sendTo()

ipcRenderer.sendTo() API 已被弃用。应将其替换为在渲染器之间设置 MessageChannel

IpcRendererEventsenderIdsenderIsMainFrame 属性也已被弃用。

移除:systemPreferences 中的颜色方案事件

以下 systemPreferences 事件已被移除:

  • inverted-color-scheme-changed
  • high-contrast-color-scheme-changed

请改用 nativeTheme 模块上新的 updated 事件。

// Removed
systemPreferences.on('inverted-color-scheme-changed', () => {
/* ... */
});
systemPreferences.on('high-contrast-color-scheme-changed', () => {
/* ... */
});

// Replace with
nativeTheme.on('updated', () => {
/* ... */
});

移除:webContents.getPrinters

webContents.getPrinters 方法已被移除。 请改用 webContents.getPrintersAsync

const w = new BrowserWindow({ show: false });

// Removed
console.log(w.webContents.getPrinters());
// Replace with
w.webContents.getPrintersAsync().then((printers) => {
console.log(printers);
});

移除:systemPreferences.{get,set}AppLevelAppearancesystemPreferences.appLevelAppearance

systemPreferences.getAppLevelAppearancesystemPreferences.setAppLevelAppearance 方法以及 systemPreferences.appLevelAppearance 属性已移除。 请改用 nativeTheme 模块。

// Removed
systemPreferences.getAppLevelAppearance();
// Replace with
nativeTheme.shouldUseDarkColors;

// Removed
systemPreferences.appLevelAppearance;
// Replace with
nativeTheme.shouldUseDarkColors;

// Removed
systemPreferences.setAppLevelAppearance('dark');
// Replace with
nativeTheme.themeSource = 'dark';

移除:systemPreferences.getColoralternate-selected-control-text

systemPreferences.getColoralternate-selected-control-text 值已被移除。 请改用 selected-content-background

// Removed
systemPreferences.getColor('alternate-selected-control-text');
// Replace with
systemPreferences.getColor('selected-content-background');

新特性

  • 添加应用程序辅助功能透明度设置 API #39631
  • 添加对 chrome.scripting 扩展 API 的支持 #39675
  • 默认启用 WaylandWindowDecorations #39644

24.x.y 版本停止支持

根据项目的 支持策略,Electron 24.x.y 版本已停止支持。鼓励开发者和应用程序升级到较新版本的 Electron。

E27 (23年10月)E28 (23年12月)E29 (24年2月)
27.x.y28.x.y29.x.y
26.x.y27.x.y28.x.y
25.x.y26.x.y27.x.y

22.x.y 版本延长支持结束

今年早些时候,Electron 团队将 Electron 22 的计划终止支持日期从 2023 年 5 月 30 日延长至 2023 年 10 月 10 日,以匹配 Chrome 对 Windows 7/8/8.1 的延长支持(有关更多详细信息,请参阅 告别 Windows 7/8/8.1)。

根据项目的 支持策略 和此次支持延期,Electron 22.x.y 版本已停止支持。这将使支持恢复到最新的三个稳定主版本,并结束对 Windows 7/8/8.1 的官方支持。

接下来是什么

短期内,您可以预期团队将继续专注于跟进构成 Electron 的主要组件(包括 Chromium、Node 和 V8)的开发。

您可以在 此处 找到 Electron 的公共时间线。

有关未来变更的更多信息,请参见 计划中的破坏性变更 页面。