Electron 是 GitHub 发布的跨平台桌面应用开发工具,支持 Web 技术开发桌面应用,其本身是基于 C++ 开发的,GUI 核心来自于 Chrome,而 JavaScript 引擎使用 v8。
Electron 9.0.0 现已发布,主要更新内容包括有:
Breaking Changes
-
将app.allowRendererProcessReuse的默认值更改为true。这将防止在渲染器进程中加载非上下文感知的本机模块。(有关此更改的更多信息,请参见#18397。)#22401
-
删除了不推荐使用的 <webview>.getWebContents()。#20986
-
删除了不推荐使用的“setLayoutZoomLevelLimits” method。#21383
-
主进程和渲染进程之间的IPC现在使用结构化克隆算法。#20214
-
将 shell.openItem(path) 拆分为同步和异步方法。#20682
Features
-
添加了对 BrowserWindows 的全屏属性支持。#23330
-
添加了 session.listWordsFromSpellCheckerDictionary API 以列出字典中的自定义单词。#22128
-
添加了 session.removeWordFromSpellCheckerDictionary API 以删除字典中的自定义单词。#22368
-
添加了 session.serviceWorkerContext API,以访问基本服务人员信息并接收来自服务人员的控制台日志。#22313
-
在 macOS 上的 app.focus() 中添加了一个新的 force 参数,以允许应用强制 take focus。#23447
-
添加了 chrome.i18n extension API。#22570
-
为背景页面添加了chrome.tabs.connect extension API。#22549
-
添加了对 BrowserWindow 上某些 getter/setter 对的属性访问的支持。#23208
-
使用 enable_electron_extensions 进行构建时,增加了对 chrome.extension.getBackgroundPage API 的支持。#22177
-
允许为 WebFrame.executeJavaScript* methods 使用可选的回调参数,除非目标上下文已暂停,否则将同步调用该参数。#22501
-
恢复了对基于 pdfium 的 PDF 查看器的支持。#22131
Fixes
-
在 Mac 上,不允许窗口位于菜单栏后面。#22828
-
修复了 webRequest 模块不能与 file:// 协议一起使用的问题。#22919
-
修复了 webRequest 不适用于 CORS 请求的问题。#22468
-
修复了 win.setMenuBarVisibility(false) 不隐藏菜单栏的问题。#23263
-
修复了在 macOS 上更改主题会破坏窗口最大化状态的问题。#22724
-
修复了使用 protocol.registerSchemeAsPrivileged api 时网络服务进程崩溃的问题。#22917
-
……
Performance
-
改进了 Linux 上的窗口事件处理程序效率。#23260
-
在 Linux 上,设置窗口图标的速度稍快一些。#22736
发布说明:https://github.com/electron/electron/releases/tag/v9.0.0