Electron 30.0.0 发布,升级 Node 和 V8 引擎

发布于:2024-04-24 ⋅ 阅读:(33) ⋅ 点赞:(0)

近日,Electron 30.0.0 正式发布!你可以通过 npm install electron@latest 进行安装,或者从 Electron 的发布网站下载,继续阅读了解此版本的详细信息。

🔥 主要更新

  • Windows 上支持 ASAR 完整性融合。如果未正确配置,启用 ASAR 完整性的现有应用程序可能在 Windows 上无法正常工作。使用 Electron 打包工具的应用程序应升级到 @electron/packager@18.3.1@electron/forge@7.4.0。详细信息请查看我们的 ASAR 完整性教程。
  • 新增 WebContentsViewBaseWindow 主进程模块,弃用并替代 BrowserViewBrowserView 现在是 WebContentsView 的一个包装,旧实现已被移除。请参阅我们的 Web 嵌入文档,了解新的 WebContentsView API 与其他类似 API 的比较。
  • 实现了对文件系统 API 的支持。

🔧 架构更新

  • Chromium 升级至 124.0.6367.49
    • Chrome 124 和 DevTools 124 中的新功能
    • Chrome 123 和 DevTools 123 中的新功能
  • Node 升级至 20.11.1
  • V8 升级至 12.4

🌟 新增功能

  • webviews 现在支持透明的 webpreference
  • webContents API 上新增了一个实例属性 navigationHistory,以及 navigationHistory.getEntryAtIndex 方法,使应用程序能够检索浏览历史中任何导航条目的 URL 和标题。
  • 新增 BrowserWindow.isOccluded() 方法,允许应用程序检查遮挡状态。
  • net 模块发出的请求现在支持代理配置。
  • navigator.serial 中的蓝牙端口现在支持按服务类 ID 请求。
  • 支持 Node.js 的 NODE_EXTRA_CA_CERTS CLI 标志。

⚠️ 注意事项

  • 跨源 iframe 现在使用 Permission Policy 来访问功能。必须通过 allow 属性指定给定 iframe 可用的功能,以便访问它们。
  • 移除了 --disable-color-correct-rendering 命令行开关。Chromium 自身对颜色空间的支持更好,因此不再需要此标志。
  • macOS 上的 BrowserView.setAutoResize 行为发生了变化。在 Electron 30 中,BrowserView 现在是新的 WebContentsView API 的包装。如果你的应用程序使用 BrowserView.setAutoResize 来执行比填充整个窗口更复杂的操作,那么你可能已经有了处理 macOS 上行为差异的自定义逻辑。在 Electron 30 中,由于自动调整大小行为是一致的,因此不再需要这些逻辑。
  • 移除了 WebContents 上 context-menu 事件中 params 对象的 params.inputFormType 属性。请改用新的 formControlType 属性。
  • 移除了 process.getIOCounters()。Chromium 已删除对此信息的访问。

🌈 升级到 Electron 30.0.0,体验全新功能和改进吧!