vite+vue3+electron搭建项目

本文详细介绍了如何使用VSCode编辑器初始化Vite项目,下载依赖,配置Electron入口,安装nodemon监控并启动Electron应用,以及管理窗口大小和预加载JS。

编辑器使用vscode,打开一个空文件夹

第一步 初始化vite项目

初始化vite项目,命令 npm init vite 

在这里插入图片描述

第二步 下载依赖

进入新建的项目,下载依赖,命令 
cd vite-projec 
npm i

在这里插入图片描述

第三步 使用cnpm下载 electron依赖

新建一个终端,确认在项目目录下,运行命令 
npm install -g cnpm --registry=https://registry.npm.taobao.org
npm i electron -D
成功将在package.json里面新增electron依赖

在这里插入图片描述
在这里插入图片描述

第四步 新建main.js文件与入口

1、项目目录下新建main.js文件
2、package.json里面新增配置  "main": "main.js",

在这里插入图片描述
main.js内容如下:

const { app, BrowserWindow } = require ('electron')

const createWindow = () => {
    const win = new BrowserWindow({
        width: 1000,
        height: 800
    })
	// 如果没有修改vite端口 默认为5173
    win.loadURL("http://localhost:5173")
}

app.whenReady().then(() => {
  createWindow();
  
  app.on('activate', () => {
    // 在 macOS 系统内, 如果没有已开启的应用窗口
    // 点击托盘图标时通常会重新创建一个新窗口
    if (BrowserWindow.getAllWindows().length === 0) createWindow()
  })
});

// 除了 macOS 外,当所有窗口都被关闭的时候退出程序。 因此, 通常
// 对应用程序和它们的菜单栏来说应该时刻保持激活状态, 
// 直到用户使用 Cmd + Q 明确退出
app.on('window-all-closed', () => {
    if (process.platform !== 'darwin') app.quit()
  })

第五步 安装nodemon启动eletron

Nodemon 是一款非常实用的工具,用来监控你 node.js 源代码的任何变化和自动重启你的服务器。
查看帮助命令 npx nodemon --help
1、安装命令 
cnpm i nodemon -D
2、package.json文件新增启动命令
"start": "nodemon --exec electron . --watch ./ --ext .js,.html,.css,.vue"

在这里插入图片描述
在这里插入图片描述
运行 npm start ,如果运行出错,删掉package.json里面 “type”: “module”,
在这里插入图片描述

安装electron-win-state控制窗口大小与打开调试窗口

1、 安装命令 cnpm i electron-win-state -D
2、main.js引入electron-win-state

在这里插入图片描述
main.js引入electron-win-state

const { app, BrowserWindow } = require("electron");
// 引入
const WinState = require('electron-win-state').default

const createWindow = () => {
	// 默认宽高
  const winState = new WinState({
    defaultWidth: 1000,
    defaultHeight: 800
  }) 
  const win = new BrowserWindow({
    // 删掉之前的宽高,使用winState来接管
    ...winState.winOptions,
    webPreferences: {
        // preload: ''
    }
  });

  win.loadURL("http://localhost:5173");
  // 打开调试窗口
  win.webContents.openDevTools()
  // 控制打开窗口大小为上一次关闭时的大小
  winState.manage(win)
};

app.whenReady().then(() => {
  createWindow();
});

添加定义预加载的JS

1、项目目录下新建preload文件夹,文件夹下新建index.js,内容自定义
2、在main.js里引入path,将webPreferences.preload值修改为index.js的路径

在这里插入图片描述
在这里插入图片描述

完整main.js内容

const { app, BrowserWindow } = require("electron");
const path = require('path')
const WinState = require('electron-win-state').default

const createWindow = () => {

  const winState = new WinState({
    defaultWidth: 1000,
    defaultHeight: 800
  }) 
  const win = new BrowserWindow({
    // 删掉之前的大小,使用winState来接管
    // 自定义窗口状态
    ...winState.winOptions,
    webPreferences: {
        // 定义预加载的js
        preload: path.resolve(__dirname, './preload/index.js')
    },
    show: false
  });

  win.loadURL("http://localhost:3000");
  // 打开调试窗口
  win.webContents.openDevTools()
  // 控制打开窗口大小为上一次关闭时的大小
  winState.manage(win)
  // 优雅打开窗口 设置上方show: false
  win.on('ready-to-show',() => {
    win.show()
  }
  )
};

app.whenReady().then(() => {
  createWindow();
  
  app.on('activate', () => {
    // 在 macOS 系统内, 如果没有已开启的应用窗口
    // 点击托盘图标时通常会重新创建一个新窗口
    if (BrowserWindow.getAllWindows().length === 0) createWindow()
  })
});

// 除了 macOS 外,当所有窗口都被关闭的时候退出程序。 因此, 通常
// 对应用程序和它们的菜单栏来说应该时刻保持激活状态, 
// 直到用户使用 Cmd + Q 明确退出
app.on('window-all-closed', () => {
    if (process.platform !== 'darwin') app.quit()
  })
### 如何使用 ViteVue3Electron 组合进行项目开发 #### 创建 Vue3 项目 在桌面打开 PowerShell 或者其他终端工具,在其中输入命令来创建一个新的基于 ViteVue3 项目: ```bash npm create vite@latest ``` 按照提示输入项目的名称并选择 `vue` 模板以及是否采用 TypeScript 来配置新项目。完成设置之后,利用 VSCode 打开新建好的项目文件夹[^1]。 #### 安装 Electron 及其插件 为了让这个 Vue3 项目能够作为 Electron 应用程序运行,还需要安装几个必要的依赖项: - **Electron**: 主要框架用于构建跨平台桌面应用程序; - **vite-plugin-electron**: 让 Vite 支持打包 Electron 应用; - **vite-plugin-electron-renderer**: 方便处理前端渲染进程中的逻辑交互。 通过下面的命令依次安装这些包到开发环境里: ```bash npm install electron -D npm install vite-plugin-electron -D npm install vite-plugin-electron-renderer -D ``` 这一步骤确保了可以在 Vite 构建的应用中顺利集成 Electron 功能,并简化两者之间的通信过程。 #### 配置与启动应用 接下来应该是在项目根目录下建立一个名为 `electron` 的子文件夹用来放置特定于 Electron 的资源文件和入口脚本。当一切准备就绪后,可以通过执行以下两条指令分别启动 Vue 开发服务器 (`npm run dev`) 和 Electron 测试实例(`npm run electron:dev`)来进行调试工作[^2]。 ```json { "scripts": { "dev": "vite", "build": "vite build", "serve": "vite preview", "electron:dev": "electron ." } } ``` 以上就是整个流程的大致介绍,具体实现细节可能会依据个人需求有所不同。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值