跳到主要内容

版本抉择

✅ 我查好了权威官方数据(主要是 Electron 的发布时间线 + 栈变化 + 一些 breaking change 摘要),下面用表格给你整理 从 v27 到 v39 的核心变化(注意:官方没有把每个版本的完整变化直接按版汇总,我做了重要特性 & API 改动的聚合总结):

📌 Electron 版本与主要变化一览 (v27 → v39)

Electron 版本发布/支持周期栈/平台变动重要变化/API 变更摘要
v272023-10-10 起Chromium ~118✅ Dropped Win7/8/8.1 macOS 10.13/10.14;IPC sendTo 移除;移除部分 vibrancy/options;Draggable Region 变化等 ⚠ API 移除 & 安全强化
v282024Chromium ~120⚠ “traffic light” 按钮 API 移除;WebContents.backgroundThrottling 行为变更;Rosetta 运行检测移除
v292024Chromium ~122⚠ ipcRenderer over contextBridge 行为变;移除 crash/renderer 事件等
v302024Chromium ~124⚠ cross-origin iframe Permission Policy;BrowserView setAutoResize 行为变;BrowserView class 弃用;移除 context-menu inputFormType & process.getIOCounters
v312024-06Chromium ~126⚠ WebSQL 移除;nativeImage.toDataURL 行为改
v322024-08Chromium ~128⚠ File.path 移除;WebContents.goBack/canGoBack 等历史 API 移除;userData databases dir 清理
v332024-10Chromium ~130⚠ document.execCommand("paste") 弃用;WebFrameMain/ frame event 行为变
v342024-11Chromium ~132⚠ 在 Windows 全屏下菜单自动隐藏
v352025-03Chromium ~134, Node v22, V8 13.5✅ ServiceWorker preload;ServiceWorkerMain API;contextBridge.executeInMainWorld;WebContents navigationHistory API 等
v362025-04Chromium ~136, Node v22⚠ Windows fullscreen 菜单一致性行为;Deprecated & Removed 一些无用 API
v372025-06Chromium ~138, Node v22⚠ Utility process unhandled rejection 改;process.exit 行为变;WebUSB/WebSerial blocklist 支持;移除 ProtocolResponse Session null 值
v382025-09Chromium ~140, Node v22❌ Removed: ELECTRON_OZONE_PLATFORM_HINT & ORIGINAL_XDG_CURRENT_DESKTOP;Dropped macOS 11 Support;Removed plugin-crashed event
v392025-10Chromium ~142, Node v22⚠ Deprecated: –-host-rules;window.open 弹窗 always resizable;shared texture paint event data change

🔎 备注说明

  • Chrome/Node/V8 版本来自官方发布表格数据(见时间线)(releases.electronjs.org)
  • Breaking changes 摘要来自官方 Breaking Changes 页面整理(覆盖 v27–v39 多个版本 API 通告/变更趋势)(electronjs.org)
  • v35 新增的 Service Worker preload & ServiceWorkerMain 是该版本最大的特性之一(官方 release notes)(electronjs.org)
  • 一些行为变更涉及安全、API 移除、默认行为调整等,对应用迁移有比较明显影响。

🧠 总结重点

v27 → v30

  • 最核心是 API 移除 & 旧平台支持停用(Win7/8、macOS 10.x 系列)
  • 多个 IPC / webview 相关旧 API 陆续移除,尽量使用现代替代 API

v31 → v34

  • 主要是 Web 标准变化 + Chromium 版本升级
  • 这些变化会影响渲染层行为、历史 API 行为等

v35+

  • 除了 Chromium/Node/V8 的更新之外,Service Worker 支持增强是最大特性
  • 后续版本更偏向行为调整及弃用旧变量/feature

📌 升级建议视角

如果你关心 兼容性与生产发布稳定性

  • 27–30→ 是最稳妥的线(API 变化较少,native 模块兼容性好)
  • 31+ → 可能需要解决一些 Web API 和 Node Behavior 的变化

这也解释了为什么生产中很多项目停留在 27–30 区间


如果你想,我还可以做一张更细粒度的表,按每个版本列 具体 Breaking 改动细节(有 API 移除/默认变更),这对于升级评估更有价值。要不要更详细版本对比?