Electron 12.0.0
·5 分钟阅读
Electron 12.0.0 已发布!它包括 Chromium 89
、V8 8.9
和 Node.js 14.16
的升级。我们为 remote 模块添加了更改,contextIsolation 的新默认值,新的 webFrameMain API 以及常规改进。阅读下文以了解更多详情!
Electron 团队很高兴宣布 Electron 12.0.0 发布!您可以通过 npm 使用 npm install electron@latest
安装它,或者从我们的发布网站下载它。继续阅读以了解有关此版本的详细信息,并请分享您的任何反馈!
值得注意的更改
堆栈更改
- 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(流式 SIMD 扩展 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 - 添加了 Serial 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 版本中计划的重大更改的信息,请参阅我们的计划的重大更改文档。