Electron 12.0.0
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 中也已删除。有关详细信息,请参阅 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。 Electron 13.0.0 预计时间表 规划了 Electron 13.0 开发生命周期中的关键日期。此外,请参阅我们的版本控制文档,以获取有关 Electron 版本控制的更多详细信息。
有关 Electron 未来版本中计划的重大更改的信息,请参阅我们的计划重大更改文档。