2025-06-30

Electron + Vite:把 Web 应用装进桌面

#electron #vite #desktop

有一个内部工具需要从浏览器搬到桌面——要能常驻、要能直连本地资源。选了 Electron + Vite 这套最常见也最稳的组合。

为什么是 Vite

Vite 的 HMR 在开发期太香了,渲染层代码改完立刻生效,不用等打包。Electron 主进程改了才需要重启,分工明确。

环境变量那条线

桌面端连的后端地址和 Web 端不一样,我们用 .env 里的 VITE_DESKTOP_API_BASE_URL 区分:

# .env
VITE_DESKTOP_API_BASE_URL=http://localhost:4000

关键点是:带 VITE_ 前缀的才会被暴露到前端。不带前缀的变量只在构建/主进程侧可见,别搞混,否则你会纳闷"明明配了为什么读不到"。

两个坑

  • 主进程和渲染进程是两套环境,process.env 在两边不一定一致,跨进程传配置要走 IPC;
  • 打包后路径用 app.getAppPath() 之类动态拿,别写死 ./。

一句话

Electron 不是把网页套个框,是把"网页能干什么"的边界往前推了一截。

用得好,它是最省事的桌面方案;用不好,就是带着一个Chromium到处跑的体重。

← 返回文章列表