2 月 20 日,Electron 29.0.0 正式釋出!該版本包括了對 Chrome 122.0.6261.39、V8 12.2 和 Node.js 20.9.0 的升級。下面就來看看該版本都有哪些更新吧!
可以透過以下命令來安裝最新版本:
npminstall electron@latest
依賴更新
Chrome 122.0.6261.39
V8 12.2
Node.js 20.9.0
重大變化
透過
contextBridge
呼叫的函式現在使用預期的接收者(
this
)來呼叫(也適用於 27、28 版本)。
套用上的
gpu-process-crashed
事件已被棄用(也適用於 28 版本)。
套用上已棄用的
gpu-process-crashed
事件已被移除。
套用上的已棄用的
renderer-process-crashed
事件以及
WebContents
和
<webview>
上的
crashed
事件已被移除。
新特性
新增功能
添加了
WebContentsView
和
BaseWindow
,取代了現已棄用的 BrowserView API。
在
ses.setPermissionRequestHandler(handler)
中添加了
keyboardLock
(也適用於版本 26、27、28)。
在
protocol.registerSchemesAsPrivileged
中添加了一個選項,允許在自訂方案中緩存 V8 程式碼(也適用於版本 27、28)。
在實用程式中添加了
net
模組(也適用於版本 27、28)。
添加了新的 Electron Fuse,將
file://
協定選擇為與 Chromium 匹配的更安全、更嚴格的行為。
添加了新的
webUtils.getPathForFile
方法,以替代
File.path
的增強功能。
添加了透過
.npmrc
配置
use_remote_checksums
的支持。
將
app.{set|get}LoginItemSettings(settings)
遷移到 macOS 上的 Apple 推薦的新底層框架。
此 PR 向 display 物件添加了幾個內容,包括
detected
、
maximumCursorSize
和
nativeOrigin
(也適用於版本 28)。
棄用功能
從 Windows zip 檔中移除了多余的
dll
檔(也適用於版本 28)。
問題修復
添加了
ThumbnailCapturerMac
和
ScreenCaptureKitStreamPickerSonoma
這兩個 Chromium 特性標誌的支持,以在 macOS 14.4 上繞過棄用 API 的警告。
修復了 Electron 29.0.0-beta.3 中的一個回歸問題,該問題可能導致上下文選單在錯誤的位置彈出。
修復了在啟用
contextIsolation
的渲染行程中
import.meta.url
不工作的問題。
修復了原始
original-fs
方法在已修補的匯入中未正確修正的問題。
修復了跨平台時
draggable
區域不起作用的問題。
修復了
MessagePort::close
中的崩潰問題。
修復了
GrantFileProtocolExtraPrivileges
未正確阻止對
file://
URLs 的
fetch()
呼叫的問題。
註意事項
根據計畫的支持政策,Electron 26.x.y 已經達到了支持結束的狀態,鼓勵開發者和套用升級到更新的 Electron 版本。