Electron 是 GitHub 发布的跨平台桌面应用开发工具,支持 Web 技术开发桌面应用,其本身是基于 C++ 开发的,GUI 核心来自于 Chrome,而 JavaScript 引擎使用 v8。

GitHub Electron 9.0.0 发布:跨平台桌面应用开发工具-冯金伟博客园

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