Electron 让前端开发者能用 HTML、CSS、JavaScript 构建跨平台桌面应用,而 Vue3 以其简洁的语法和强大的响应式系统成为前端开发的热门选择。本文将带你从零开始,快速搭建一个 Vue3 + Electron 项目,重点解决国内环境下的依赖安装难题(如版本匹配、镜像配置、加速下载等)。

一、环境准备:先搞懂版本对应关系

Electron 本质上是 Node.js + Chromium + V8 引擎的组合,其版本与 Node.js 版本存在严格的兼容性要求(比如高版本 Electron 可能不支持低版本 Node.js)。版本不匹配会直接导致项目运行失败,因此第一步必须确认对应关系。

1. 如何查询 Electron 与 Node.js 的版本对应?

Electron 官网提供了详细的版本兼容性表格,查询步骤如下:

  1. 打开 Electron 版本文档:https://www.electronjs.org/docs/latest/tutorial/electron-versioning#nodejs(若链接失效,可搜索 “Electron Node.js version compatibility”)。

  2. 表格中会明确标注每个 Electron 版本对应的 Node.js 版本,例如(最新版本可能更新,以官网为准):

    • Electron 28.x → Node.js 18.18.x
    • Electron 29.x → Node.js 20.9.x
    • Electron 30.x → Node.js 20.11.x

2. 安装 Node.js

根据查询到的对应关系,安装合适版本的 Node.js(建议使用 LTS 长期支持版):

  • 下载地址:https://nodejs.org/
  • 安装后验证:打开终端,输入 node -v 和 npm -v,确保版本正确(例如 Node.js 20.11.x 对应 npm 10.x)。

二、解决国内下载慢:配置镜像加速

国内网络访问 npm 官方仓库和 Electron 资源较慢,甚至会出现下载失败(如 electron-vxxx.zip 无法下载)。需手动配置镜像地址加速。

1. 配置 npm 镜像(淘宝镜像)

打开终端,执行以下命令设置 npm 镜像:

# 设置 npm 镜像
npm config set registry https://registry.npmmirror.com/

# 验证镜像是否设置成功
npm config get registry
# 输出 https://registry.npmmirror.com/ 即为成功

2. 配置 Electron 专用镜像

Electron 的二进制文件(如 electron.exe)默认从 GitHub 下载,国内访问困难。需单独配置 Electron 镜像:

# 设置 Electron 镜像(淘宝源)
npm config set electron_mirror https://npmmirror.com/mirrors/electron/

# 验证配置
npm config get electron_mirror
# 输出 https://npmmirror.com/mirrors/electron/ 即为成功

三、安装 cnpm 进一步加速依赖安装

cnpm 是 npm 的国内镜像客户端,能进一步提升依赖下载速度(尤其适合大型包如 Electron)。

1. 安装 cnpm

# 全局安装 cnpm(使用淘宝镜像)
npm install -g cnpm --registry=https://registry.npmmirror.com/

# 验证安装
cnpm -v
# 输出版本号即表示安装成功

2. 为什么用 cnpm?

  • 国内访问速度比 npm 快,减少下载超时风险;
  • 对 Electron 等大型二进制包的处理更稳定,避免因网络问题导致的安装失败。

四、创建 Vue3 项目

使用 Vue 官方脚手架 @vue/cli 创建 Vue3 项目(若未安装,先全局安装)。

1. 安装 Vue CLI

# 全局安装 Vue CLI(若已安装可跳过)
cnpm install -g @vue/cli

2. 创建 Vue3 项目

# 创建项目(项目名可自定义,如 vue3-electron-demo)
vue create vue3-electron-demo

# 选择配置:
# 1. 手动选择特性(Manually select features)
# 2. 勾选:Babel、TypeScript(可选)、Router、Vuex(或Pinia)、CSS Pre-processors
# 3. 选择 Vue 版本:3.x
# 4. 其他配置按默认即可(如ESLint、路由模式等)

3. 进入项目目录

cd vue3-electron-demo

五、集成 Electron 到 Vue3 项目

使用 vue-cli-plugin-electron-builder 插件快速集成 Electron,该插件会自动配置 Electron 打包和运行环境。

1. 安装 Electron 插件

# 安装插件(会自动安装对应版本的 Electron)
vue add electron-builder

2. 选择 Electron 版本

执行上述命令后,终端会提示选择 Electron 版本(如 ^28.0.0^29.0.0 等)。务必选择与你安装的 Node.js 版本匹配的 Electron 版本(参考第一步的版本对应关系)。

例如:若 Node.js 是 20.11.x,可选择 ^30.0.0(需确认官网最新对应关系)。

3. 用 cnpm 安装依赖

插件安装过程中可能会自动安装依赖,但为了确保 Electron 正确下载,建议手动用 cnpm 重新安装一次:

# 用 cnpm 安装所有依赖(包括 Electron)
cnpm install

若出现 node-gyp 相关错误(如编译失败),可安装 windows-build-tools(Windows)或 xcode-select(Mac)解决:

# Windows 系统
cnpm install --global --production windows-build-tools
# Mac 系统
xcode-select --install

六、运行项目:测试 Vue3 + Electron 效果

依赖安装完成后,即可启动桌面应用:

# 开发模式运行(会自动打开 Electron 窗口)
npm run electron:serve

成功运行后,会看到一个 Electron 窗口加载了 Vue3 项目的默认页面(如 Vue 图标和导航栏),说明集成成功。

七、打包成桌面应用(可选)

若需要将项目打包为可执行文件(.exe、.dmg 等),执行以下命令:

# 打包(根据系统生成对应格式的安装包)
npm run electron:build

打包完成后,安装包会生成在项目的 dist_electron 目录下。

常见问题与解决

  1. Electron 下载失败:检查 electron_mirror 配置是否正确(npm config get electron_mirror),确保使用淘宝镜像;若仍失败,删除 node_modules 和 package-lock.json,用 cnpm install 重新安装。

  2. 版本不兼容报错:例如 Error: The module ... was compiled against a different Node.js version,需卸载当前 Electron,重新安装与 Node.js 匹配的版本(参考第一步的版本对应表)。

  3. 启动时白屏:检查 Vue 路由模式,若使用 history 模式,需在 vue.config.js 中配置 publicPath: './',避免路径错误。

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐