Electron 12.0.0
·阅读时长:5 分钟
Electron 12.0.0 已发布!它包括 Chromium 89
、V8 8.9
和 Node.js 14.16
的升级。我们对远程模块添加了更改,为 contextIsolation 设置了新的默认值,添加了一个新的 webFrameMain API,以及一般改进。请阅读以下内容以了解更多详细信息!
Electron 团队很高兴宣布发布 Electron 12.0.0!您可以通过 npm install electron@latest
使用 npm 安装它,或从我们的 发布网站 下载。继续阅读以了解有关此版本的详细信息,并分享您可能有的任何反馈!
值得注意的更改
堆栈更改
- Chromium
89
- Node.js
14.16
- V8
8.9
重点功能
- ContextBridge 的
exposeInMainWorld
方法现在可以公开非对象 API。 #26834 - 从 Node 12 升级到 Node 14。 #23249
- 添加了一个新的
webFrameMain
API,用于从主进程访问WebContents
实例的子帧。 #25464 contextIsolation
和worldSafeExecuteJavaScript
的默认值现在为true
。 #27949 #27502
有关新功能和更改的完整列表,请参阅 12.0.0 版本说明。
重大更改
- 已弃用
remote
模块。它被@electron/remote
取代。 #25293- 如果您当前正在使用
remote
模块,我们已经编写了 一份迁移到@electron/remote
的指南,请点击此处查看。
- 如果您当前正在使用
- 已将
contextIsolation
的默认值更改为true
。 #27949 - 已将
worldSafeExecuteJavaScript
的默认值更改为true
。 #27502 - 已将
crashReporter.start({ compress })
的默认值从false
更改为true
。 #25288 - 已删除 Flash 支持:Chromium 已删除对 Flash 的支持,Electron 12 中也已删除对 Flash 的支持。有关更多详细信息,请参阅 Chromium 的 Flash 路线图。
- x86 上的 Chrome 需要 SSE3:Chromium 已删除对 不支持 SSE3 (Streaming SIMD Extensions 3) 最低要求的旧版 x86 CPU 的支持。Electron 12 中也已删除此支持。
有关这些和未来更改的更多信息,可以在 计划中的重大更改 页面上找到。
API 更改
- 已添加
webFrameMain
API:webFrameMain
模块可用于查找跨现有WebContents
实例的帧。这是现有 webFrame API 的主进程等效项。有关此新 API 的更多信息,请参阅 此处,以及我们的 文档。 app
API 更改BrowserWindow
API 更改contextBridge
API 更改- 允许 ContextBridge
exposeInMainWorld
方法公开非对象 API。 #26834
- 允许 ContextBridge
display
API 更改- 已将
displayFrequency
属性添加到Display
对象以允许获取有关 Windows 上刷新率的信息。 #26472
- 已将
extensions
API 更改- 已添加对某些
chrome.management
API 的支持。 #25098
- 已添加对某些
MenuItem
API 更改- 已添加对显示 macOS 共享菜单的支持。 #25629
net
API 更改powerMonitor
API 更改session
API 更改- 为
ses.loadExtension()
API 添加了allowFileAccess
选项。 #27702 - 为
session.setPermissionRequestHandler
添加了display-capture
API。 #27696 - 为
session.setSSLConfig
添加了disabledCipherSuites
选项。 #25818 - 为
session
添加了extension-loaded
、extension-unloaded
和extension-ready
事件。 #25385 - 添加了
session.setSSLConfig()
用于配置 SSL。 #25461 - 添加了在
session.setProxy()
中明确指定direct
、auto_detect
或system
模式支持。 #24937 - 添加了 串行 API 支持。 #25237
- 添加了启用/禁用拼写检查的 API。 #26276
- 为
shell
API 更改- 添加了新的异步
shell.trashItem()
API,替换了同步shell.moveItemToTrash()
。 #25114
- 添加了新的异步
webContents
API 更改webFrame
API 更改- 将拼写检查 API 添加到渲染器。 #25060
已删除/弃用的更改
以下 API 已被删除或已弃用
- 已弃用
remote
模块。它被@electron/remote
取代。 #25293 - 已删除弃用的
crashReporter
API。 #26709 - 从打包应用程序的默认“帮助”菜单中删除了指向 Electron 网站的链接。 #25831
9.x.y 的支持结束
根据项目的 支持策略,Electron 9.x.y 已停止支持。鼓励开发人员和应用程序升级到更新版本的 Electron。
下一步
短期内,您可以预期团队将继续专注于跟上构成 Electron 的主要组件的开发,包括 Chromium、Node 和 V8。尽管我们谨慎地不对发布日期做出承诺,但我们的计划是大约每季度发布 Electron 的新主要版本,其中包含这些组件的新版本。 暂定的 13.0.0 时间表 概述了 Electron 13.0 开发生命周期的关键日期。此外, 请参阅我们的版本控制文档,以获取有关 Electron 版本控制的更多详细信息。
有关 Electron 未来版本中计划的重大更改的信息,请参阅我们计划的重大更改文档。