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 (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 - 新增 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 版本中計劃的重大變更資訊,請參閱我們的計劃重大變更文件。