Electron 7.0.0
Electron 7.0.0 已经发布!它包括 Chromium 78、V8 7.8 和 Node.js 12.8.1 的升级。我们添加了 Windows on Arm 64 版本、更快的 IPC 方法、新的 nativeTheme
API 等等!
Electron 团队很高兴地宣布 Electron 7.0.0 发布!您可以在 npm 上通过 npm install electron@latest
安装它,也可以从我们的 版本网站 下载。该版本包含了升级、修复和新功能。我们迫不及待地想看看您用它们构建了什么!继续阅读以了解有关此版本的详细信息,并请分享您可能有的任何反馈!
值得注意的更改
-
堆栈升级
堆栈 Electron 6 中的版本 Electron 7 中的版本 新增功能 Chromium 76.0.3809.146 78.0.3905.1 77, 78 V8 7.6 7.8 7.7, 7.8 Node.js 12.4.0 12.8.1 12.5, 12.6, 12.7, 12.8, 12.8.1 -
添加了
ipcRenderer.invoke()
和ipcMain.handle()
用于异步请求/响应式 IPC。强烈建议使用它们,而不是使用remote
模块。请参阅这篇 "Electron 的“remote”模块被认为是有害的" 博客文章,了解更多信息。 #18449 -
切换到新的 TypeScript 定义 生成器。生成的定义更加精确;因此,如果您的 TypeScript 构建失败,这可能是原因。 #18103
查看 7.0.0 版本说明,了解更长的变更列表。
重大更改
有关这些更改和未来更改的更多信息,请参见 计划的重大更改 页面。
- 已删除弃用的 API
- 现在使用 Promise 的函数的基于回调的版本。 #17907
Tray.setHighlightMode()
(macOS)。 #18981app.enableMixedSandbox()
#17894app.getApplicationMenu()
,app.setApplicationMenu()
,powerMonitor.querySystemIdleState()
,powerMonitor.querySystemIdleTime()
,webFrame.setIsolatedWorldContentSecurityPolicy()
,webFrame.setIsolatedWorldHumanReadableName()
,webFrame.setIsolatedWorldSecurityOrigin()
#18159
Session.clearAuthCache()
不再允许过滤已清除的缓存条目。 #17970- macOS 上的本机界面(菜单、对话框等)现在会自动匹配用户机器上的深色模式设置。 #19226
- 更新了
electron
模块以使用@electron/get
。现在最低支持的节点版本为 Node 8。 #18413 - 文件
electron.asar
不再存在。任何依赖于其存在的打包脚本都应进行更新。 #18577
4.x.y 的支持结束
Electron 4.x.y 已根据项目的 支持策略 结束支持。鼓励开发人员和应用程序升级到 Electron 的更新版本。
应用反馈计划
我们继续使用我们的 应用反馈计划 进行测试。参与此计划的项目会在其应用程序上测试 Electron 测试版;作为回报,他们发现的新错误会在稳定版本中优先处理。如果您想参与或了解更多信息,查看我们关于该计划的博客文章。
接下来会发生什么
从短期来看,您可以预期团队将继续专注于跟上组成 Electron 的主要组件的开发,包括 Chromium、Node 和 V8。虽然我们谨慎地不承诺发布日期,但我们的计划是每季度大约发布一次 Electron 的新主要版本,其中包含这些组件的新版本。该 暂定的 8.0.0 时间表 映射了 Electron 8 开发生命周期中的关键日期。此外,查看我们的版本控制文档,了解有关 Electron 版本控制的更详细信息。
有关 Electron 未来版本中计划的重大更改的信息,请参见 我们的计划重大更改文档。