跳转到主要内容

Electron 7.0.0

·阅读时长 4 分钟

Electron 7.0.0 已发布! 此版本中包含了对 Chromium 78、V8 7.8 和 Node.js 12.8.1 的升级。 我们增加了适用于 Arm 64 的 Windows 版本,更快的 IPC 方法,一个新的 `nativeTheme` API,以及更多!


Electron 团队很高兴地宣布 Electron 7.0.0 版本发布!您可以通过 npm 使用 npm install electron@latest 安装它,或从我们的 发布网站 下载。此版本包含升级、修复和新功能。我们迫不及待地想看看您将用它们构建什么!继续阅读以了解有关此版本的详细信息,并请分享您的反馈!

值得注意的变化

  • 技术栈升级

    技术栈Electron 6 中的版本Electron 7 中的版本新功能
    Chromium76.0.3809.14678.0.3905.177, 78
    V87.67.87.7, 7.8
    Node.js12.4.012.8.112.5, 12.6, 12.7, 12.8, 12.8.1
  • 添加了 Windows on Arm (64 位) 发布版本。 #18591, #20112

  • 添加了 ipcRenderer.invoke()ipcMain.handle(),用于异步请求/响应式 IPC。强烈建议使用它们代替 remote 模块。请参阅这篇 "Electron 的 ‘remote’ 模块被认为是有害的" 博客文章以获取更多信息。 #18449

  • 添加了 nativeTheme API,用于读取和响应操作系统主题和配色方案的变化。 #19758, #20486

  • 切换到新的 TypeScript 定义 生成器。生成的定义更加精确;因此,如果您的 TypeScript 构建失败,这很可能是原因。 #18103

请参阅 7.0.0 版本说明 以获取更长的更改列表。

破坏性变更

有关这些和未来更改的更多信息,请参阅 计划中的破坏性更改 页面。

  • 已移除废弃的 API
    • 现在使用 Promises 的函数的基于回调的版本。 #17907
    • Tray.setHighlightMode() (macOS)。 #18981
    • app.enableMixedSandbox() #17894
    • app.getApplicationMenu(),
    • app.setApplicationMenu(),
    • powerMonitor.querySystemIdleState(),
    • powerMonitor.querySystemIdleTime(),
    • webFrame.setIsolatedWorldContentSecurityPolicy(),
    • webFrame.setIsolatedWorldHumanReadableName(),
    • webFrame.setIsolatedWorldSecurityOrigin() #18159
  • Session.clearAuthCache() 不允许过滤清除的缓存条目。 #17970
  • macOS 上的原生界面(菜单、对话框等)现在会自动匹配用户机器上的深色模式设置。 #19226
  • electron 模块更新为使用 @electron/get。最低支持的 Node 版本现在是 Node 8。 #18413
  • 文件 electron.asar 不再存在。任何依赖于其存在的打包脚本都应更新。 #18577

4.x.y 版本停止支持

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

应用反馈计划

我们继续使用我们的 应用反馈计划 进行测试。 参与此计划的项目会在其应用上测试 Electron beta 版;作为回报,他们发现的新 bug 将优先在稳定版本中修复。 如果您想参与或了解更多信息,请 查看我们关于该计划的博客文章

接下来是什么

在短期内,团队将继续专注于保持构成 Electron 的主要组件的开发,包括 Chromium、Node 和 V8。虽然我们小心谨慎,不承诺发布日期,但我们的计划是大约每季度发布 Electron 的新主要版本,其中包含这些组件的新版本。 暂定的 8.0.0 时间表 概述了 Electron 8 开发生命周期的关键日期。此外,请参阅我们的版本控制文档 以获取有关 Electron 版本控制的更详细信息。

有关 Electron 未来版本中计划的破坏性更改的信息,请 参阅我们的计划破坏性更改文档