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 中删除。有关更多详细信息,请参阅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 即将发布的版本中计划的重大更改的信息,请参阅我们的计划的重大更改文档。