# electron-vite-vue3
**Repository Path**: ruanjingtao/electron-vite-vue3
## Basic Information
- **Project Name**: electron-vite-vue3
- **Description**: 使用vie+vue3的electorn项目
- **Primary Language**: Unknown
- **License**: Not specified
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2025-08-06
- **Last Updated**: 2025-08-07
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# Vue 3 + TypeScript + Vite + electron
初始化项目参考
https://juejin.cn/post/7360899424107970586#heading-11
废话少说,先看效果

入门第一个electron的程序后 就发现使用原生还是太不方便了 html和js css逻辑分开 有更好的框架为何不用呢,查了下react和vue都可以和electron很好的融合, 首先第一步 用vite脚手架建一个vue项目,这里就不赘述了应该都会吧,我是用的webstorm更方便,一件新建项目选择脚手架就行了,没得或者用vscode的老老实实命令行npx create-vite 然后选择几个选项就行用ts就选上这个无所谓

创建好后 目录如图

然后npm i 再 npm run dev 你就可以看见vite脚手架的默认页面了

这是没有代码审查和格式化工具,最近发现一个叫biome的很好用 结合了eslint和prettier,这样不用再同时引入两个还有一堆插件很麻烦,这个很轻量化的工具,推荐 再引入下几个electron的相关依赖
```
"devDependencies": {
"@biomejs/biome": "^2.1.3",
"@vitejs/plugin-vue": "^6.0.0",
"@vue/tsconfig": "^0.7.0",
"electron": "^37.2.6",
"electron-builder": "^26.0.12",
"typescript": "~5.8.3",
"vite": "^7.0.4",
"vite-plugin-electron": "^0.29.0",
"vue-tsc": "^2.2.12"
}
```
创建一个biome.json再根目录来配置biome规则,默认就行,肥肠好用
```
{
"formatter": {
"enabled": true,
"indentStyle": "space",
"indentWidth": 2
},
"linter": {
"enabled": true,
"rules": {
"recommended": true
}
}
}
```
根目录建立一个src-electron文件夹来存放electron的相关文件,业务不负责就放一个main.js就行了
```js
const { app, BrowserWindow } = require("electron");
const { join } = require("path");
// 屏蔽安全警告
// ectron Security Warning (Insecure Content-Security-Policy)
process.env["ELECTRON_DISABLE_SECURITY_WARNINGS"] = "true";
function createWindow() {
console.log("creatWindow", __dirname, process.env, process, process.platform);
const win = new BrowserWindow({
width: 800,
height: 600,
});
// development模式
if (process.env.VITE_DEV_SERVER_URL) {
win.loadURL(process.env.VITE_DEV_SERVER_URL);
// 开启调试台
win.webContents.openDevTools();
} else {
win.loadFile(join(__dirname, "../dist/index.html"));
}
}
// Electron 会在初始化后并准备
app.whenReady().then(() => {
createWindow();
app.on("activate", () => {
if (BrowserWindow.getAllWindows().length === 0) createWindow();
});
});
app.on("window-all-closed", () => {
if (process.platform !== "darwin") app.quit();
});
```
再vite config中加入electron插件
```
import vue from "@vitejs/plugin-vue";
import { defineConfig } from "vite";
import electron from "vite-plugin-electron";
// https://vite.dev/config/
export default defineConfig({
plugins: [vue(), electron({ entry: "./src-electron/main.js" })],
});
```
这时候你再来运行 就可以发现这个项目运行在了electron的窗口中 然后再webstorm中下载一个biome插件,再保存时候运行biome 这样保存时候可以自动的格式化代码和纠正一些错误


大功告成,后面就是vue+vite怎么写 你就怎么写就完事

计算器代码,修改Helloworld,这块都不难 实在不行让AI写都行只要描述的够清楚就行,啥年代了还手敲啥
```vue
```
开发完了就要打包
打包的话再package.json要配置一下
全部配置如下,build:{}中是electron-build的相关配置 其实也可以写配置文件 但这样简单些,主要就是配置了打包的方式,输出目录书否允许选择文件夹和语言啥的。
```
{
"name": "electron-vite-vue3",
"private": true,
"version": "0.0.0",
"main": "./src-electron/main.js",
"scripts": {
"dev": "vite",
"build": "vue-tsc -b && vite build",
"build-win": "vite build && electron-builder --win",
"preview": "vite preview"
},
"build": {
"compression": "maximum",
"directories": {
"output": "release/"
},
"win": {
"target": [
"nsis"
]
},
"nsis": {
"oneClick": false,
"language": "2052",
"perMachine": true,
"allowToChangeInstallationDirectory": true
}
},
"dependencies": {
"element-plus": "^2.10.5",
"vue": "^3.5.17"
},
"devDependencies": {
"@biomejs/biome": "^2.1.3",
"@vitejs/plugin-vue": "^6.0.0",
"@vue/tsconfig": "^0.7.0",
"electron": "^37.2.6",
"electron-builder": "^26.0.12",
"typescript": "~5.8.3",
"vite": "^7.0.4",
"vite-plugin-electron": "^0.29.0",
"vue-tsc": "^2.2.12"
}
}
```
最后你也可以打出来一个安装包啦 给朋友用也非常的好使
编辑