vue+vite+electron项目初始化

文章指导读者如何创建一个基于Vite的前端项目,并集成Electron。首先通过npm创建Vite项目,然后设置Electron的npm镜像源以解决安装问题。接着,建立main.cjs作为Electron的入口文件,并安装concurrently来同时运行Vite和Electron。最后,在package.json中配置脚本,实现开发环境的启动。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

首先,创建一个vite项目,Vite | 下一代的前端工具链

npm create vite@latest

随后安装electron,安装失败试试这个

使用命令:npm config set ELECTRON_MIRROR http://npm.taobao.org/mirrors/electron/

然后执行下边这个:

npm install electron

安装完毕后新建main.cjs,作为electron的入口文件

const {BrowserWindow, app} = require("electron")
const {fastKey} = require("yarn/lib/cli.js");

const createWin = () => {
    const win = new BrowserWindow({
        width: 800,
        height: 600,
        maximizable:false
    })
    win.loadURL("http://127.0.0.1:5173/").then(r => {})
    win.setMenu(null)
}

app.whenReady().then(() => {
    createWin()

})

安装concurrently

npm install concurrently
安装完毕后在,package.json中进行配置

 配置脚本

 整体package.json,别无脑复制

{
  "name": "xxx",
  "private": true,
  "version": "0.0.0",
  "type": "module",
  "main": "main.cjs",
  "scripts": {
    "dev": "concurrently \"vite\" \"electron .\"",
    "build": "vue-tsc && vite build",
    "preview": "vite preview"
  },
  "dependencies": {
    "concurrently": "^8.1.0",
    "electron": "^25.0.1",
    "element-plus": "^2.3.6",
    "vue": "^3.2.47",
    "yarn": "^1.22.19"
  },
  "devDependencies": {
    "@vitejs/plugin-vue": "^4.1.0",
    "typescript": "^5.0.2",
    "unplugin-auto-import": "^0.16.4",
    "unplugin-vue-components": "^0.25.0",
    "vite": "^4.3.9",
    "vue-tsc": "^1.4.2"
  }
}

启动项目,npm run dev

 完活

下面是一个简单的步骤,帮助你搭建一个基于 Vue3,ViteElectron项目。 1. 创建项目文件夹并进入: ```bash mkdir my-electron-app cd my-electron-app ``` 2. 初始化 npm,使用默认设置: ```bash npm init -y ``` 3. 安装依赖: ```bash npm i electron vite vue@next ``` 4. 创建 Vite 配置文件 `vite.config.js`: ```javascript import { defineConfig } from 'vite' import vue from '@vitejs/plugin-vue' export default defineConfig({ plugins: [vue()], build: { outDir: 'dist/electron', emptyOutDir: true, sourcemap: true, target: 'chrome90', minify: false }, optimizeDeps: { include: ['electron-is-dev'] } }) ``` 5. 创建入口文件 `main.js`: ```javascript const { app, BrowserWindow } = require('electron') const isDev = require('electron-is-dev') let mainWindow function createWindow() { mainWindow = new BrowserWindow({ width: 800, height: 600, webPreferences: { nodeIntegration: true, contextIsolation: false, enableRemoteModule: true } }) const url = isDev ? 'http://localhost:3000' : `file://${__dirname}/index.html` mainWindow.loadURL(url) mainWindow.on('closed', function () { mainWindow = null }) } app.on('ready', createWindow) app.on('window-all-closed', function () { if (process.platform !== 'darwin') app.quit() }) app.on('activate', function () { if (mainWindow === null) createWindow() }) ``` 6. 创建 `index.html` 文件: ```html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <title>My Electron App</title> </head> <body> <div id="app"></div> <script src="./src/main.js"></script> </body> </html> ``` 7. 创建 Vue 组件 `HelloWorld.vue`: ```html <template> <div class="hello"> <h1>{{ msg }}</h1> </div> </template> <script> export default { name: 'HelloWorld', props: { msg: String } } </script> <style scoped> h1 { font-size: 3em; text-align: center; } </style> ``` 8. 在 `src/main.js` 中引入 `HelloWorld.vue` 并创建 Vue 应用: ```javascript import { createApp } from 'vue' import App from './App.vue' const app = createApp(App) app.mount('#app') ``` 9. 创建 `App.vue` 文件并使用 `HelloWorld` 组件: ```html <template> <HelloWorld msg="Welcome to Your Vue.js + Electron App" /> </template> <script> import HelloWorld from './components/HelloWorld.vue' export default { name: 'App', components: { HelloWorld } } </script> ``` 10. 修改 `package.json` 文件,添加启动命令: ```json { "name": "my-electron-app", "version": "1.0.0", "main": "main.js", "scripts": { "dev": "vite", "start": "electron ." }, "dependencies": { "electron": "^13.1.2", "electron-is-dev": "^2.0.0", "vue": "^3.1.4" }, "devDependencies": { "@vitejs/plugin-vue": "^1.5.0", "vite": "^2.4.4" } } ``` 11. 启动项目: ```bash npm run dev ``` 在另一个终端中打开: ```bash npm start ``` 这样就可以启动一个基于 Vue3,ViteElectron项目了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值