electron+vite+vue3.0+forge或electron builder最新打包流程

简介

文章更新与2023年2月12日。

【打包需要连接外网的资源,需要翻墙。翻不了墙的可以自己查找一下解决方案】

electron官网:https://www.electronjs.org
electron forge官网:https://www.electronforge.io
electron builder官网:https://www.electron.build/

环境要求:git、node@14版本以上、npm@8版本以上。具体的可以看一下官方的文档,也可以不管,后面有提示再根据提示更新和安装。

自使用electron以来,它的打包就一直是一个使我头疼的问题。electron有好几打包工具,以前官方没有推荐用谁。现在官方统一推荐forge来打包了,哪个打包工具有什么的优势也没有人说明白。总之官方推荐,并且存在即正义的准则,那么就不要问为什么了,用就完了。


安装

1.安装:这里我使用的是npm安装,当然你也可以用cnpm、yarn等等安装。安装一般没有什么问题,这里就不延伸了。
npm install --save-dev @electron-forge/cli

2.自动配置:这里forge会自动配置你的package.json的代码,所以推荐在执行前先拷贝一份,避免命令冲突被置换找不回来。
npx electron-forge import

这一步会出现一些问题,因为forge的打包和配置是需要 git 的环境支持,所以这里可能会报错Could not find git in environment,出现没有git的环境提示,就需要安装git(git的官网:https://gitforwindows.org/)。

git安装完成后,这时执行npx electron-forge import,还是会提示找不到git环境。那就到git bash的窗口去执行命令。记得切换到目标文件夹下执行

在这里插入图片描述

打包

打包也需要到git bash的窗口去执行命令,记得切换到目标文件夹下执行

打包的过程可能会提示你有些信息是必填的,这时候就到package.json中填写好必要项。我这里是提示我作者是必要项,所以我就到package中填写好。

再次打包就成功了。
在这里插入图片描述
在这里插入图片描述

到这里,我们基本已经将环境配置好,打包出程序了。现在就可以仔细配置其他一些自定义项了。

更多配置

配置vue项目

vue-vite的打包单页面应用

不管你用什么脚手架,vue的项目最终都会被打包。有的项目就是为桌面端开发的,也就是在开发的时候启动两个进程(一个vue项目进程,一个electron进程,electron加载本地的一个端口数据),这时候就需要我们先将vue打包,在打包electron。有nodejs基础的,可以根据自己项目的情况,开发一键打包命令,没有基础的就只能绕个弯分次打包(期望以后有兼容性好的打包插件出现吧)

所以我们第一步就是将vue的项目打包好,但vue的项目默认是部署到服务器需要路由的效果。所以我们就需要用electron构建一个路由类似托管vue项目的静态资源。

electron已经为我们想好了,electron有一个类protocol,我们可以使用它来构建。

来看一下目录结构在看一下代码。

vue-vite的打包多页面应用

vite官方文档介绍:https://cn.vitejs.dev/guide/build.html#multi-page-app
更具vue的官方文档介绍我们可以更具需要打包多个dufault.html文件来给electron使用。因为这样方便我们使用browserWindow来加载文件,渲染多个不同的窗口。

多平台打包 mac、win、lunix等

想要多平台,就需要多电脑。

我看到的打包工具都说不能再同一平台打包多个平台的软件。也就是你不能在mac打包win软件,不能再win打包mac软件。所以想要多平台,就需要多电脑。

forge配置项

forge虽然是electron官推的打包,但是我在mac用不了。所以后来就改electron-builder了,兼容性更好。所以大家看自己电脑喜欢哪个就用哪个。

forge的就不做过多的介绍了

electron-builder配置项

1.安装
2.配置package.json
3.打包(需要外网)

Vite 是一款快速的前端构建工具,它基于 ES modules 优化的开发服务器和构建工具,可以实现秒级的热更新和快速的构建打包。在结合 Vue 框架使用时,可以快速搭建和开发一个 Vue 项目。 在使用 ViteVue 结合开发 Electron 项目时,可以按照以下步骤进行操作: 1. 创建项目 首先需要创建一个空的 Electron 项目,可以使用 electron-forge 来创建: ``` npx create-electron-app my-app ``` 2. 安装依赖 进入项目目录,安装 ViteVue 相关依赖: ``` cd my-app npm install vite vue@next vue-router@4 ``` 3. 配置 Vite 在项目根目录下创建一个 vite.config.js 文件,用来配置 Vite 的相关选项: ```javascript // vite.config.js const path = require(&#39;path&#39;) module.exports = { // 入口文件 main: &#39;src/main.js&#39;, // 输出目录 outDir: &#39;dist&#39;, // 生产模式关闭 sourcemap productionSourceMap: false, // 开发模式下的服务器配置 server: { port: 3000, open: true, proxy: { &#39;/api&#39;: { target: &#39;http://localhost:8080&#39;, changeOrigin: true, rewrite: path => path.replace(/^\/api/, &#39;&#39;) } } } } ``` 4. 编写 Vue 组件 在 src 目录下创建一个 App.vue 文件,用来编写 Vue 组件: ```vue <template> <div> <h1>{{ title }}</h1> <router-link to="/">Home</router-link> <router-link to="/about">About</router-link> <router-view></router-view> </div> </template> <script> import { defineComponent } from &#39;vue&#39; import { RouterLink, RouterView } from &#39;vue-router&#39; export default defineComponent({ name: &#39;App&#39;, components: { RouterLink, RouterView }, data () { return { title: &#39;Hello Vite Electron!&#39; } } }) </script> ``` 5. 编写入口文件 在 src 目录下创建一个 main.js 文件,用来编写 Electron 的入口文件和 Vue 的启动代码: ```javascript // src/main.js const { app, BrowserWindow } = require(&#39;electron&#39;) const path = require(&#39;path&#39;) const isDev = require(&#39;electron-is-dev&#39;) const { createServer } = require(&#39;vite&#39;) const { createProtocol } = require(&#39;vue-cli-plugin-electron-builder/lib&#39;) async function createWindow () { // 创建浏览器窗口 const win = new BrowserWindow({ width: 800, height: 600, webPreferences: { nodeIntegration: true, contextIsolation: false, enableRemoteModule: true, devTools: isDev } }) // 加载应用主页面 if (isDev) { // 开发模式下使用 Vite 的开发服务器 const viteServer = await createServer() await viteServer.listen() await win.loadURL(`http://localhost:3000`) } else { // 生产模式下加载静态页面 createProtocol(&#39;app&#39;) await win.loadURL(`app://./index.html`) } } app.whenReady().then(createWindow) ``` 6. 配置 package.json 在 package.json 文件中添加以下代码,用来启动 Electron 应用: ```json { "scripts": { "serve": "vite", "build": "vite build", "start": "electron ." } } ``` 7. 运行应用 在终端中运行以下命令,启动开发模式下的应用: ``` npm run serve npm run start ``` 在浏览器中打开 http://localhost:3000 可以看到应用已经成功运行。 8. 打包应用 在终端中运行以下命令,打包生产模式下的应用: ``` npm run build ``` 打包完成后,在 dist 目录下会生成一个可执行的应用程序和相关资源文件。 以上就是使用 ViteVue 结合开发 Electron 项目的详细介绍。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

圈点Studio

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值