Electron + Vite + Vue 桌面应用模板

一个现代化的桌面应用开发模板,基于Electron、Vite和Vue 3。

特性

  • 📦 Electron - 构建跨平台桌面应用
  • Vite - 闪电般的构建和热更新
  • 🖖 Vue 3 - 渐进式JavaScript框架
  • 🎨 Element Plus - 现代化UI组件库
  • 🌍 国际化 - 多语言支持
  • 🎭 主题切换 - 亮色/暗色主题
  • 🗄️ 数据库支持 - 内置SQLite数据库

预览


开发环境

前提条件

  • Node.js >= 16
  • npm >= 8

安装

bash 复制代码
# 克隆仓库
git clone https://gitee.com/jl15988/electron-vite-vue-template.git
cd electron-vite-vue-template

# 安装依赖
npm install

开发

bash 复制代码
# 启动开发服务器
npm run dev

在开发模式下,应用会自动打开开发者工具并提供实时热更新支持。

构建

bash 复制代码
# 构建应用
npm run build

构建完成后,可在dist目录找到打包好的应用。

功能

自定义窗口标题栏

应用使用自定义窗口标题栏,提供最小化、最大化和关闭按钮。

国际化支持

应用支持多语言切换功能:

  • 中文
  • 英文
  • 可轻松扩展添加其他语言

主题切换

支持亮色和暗色主题切换,并记住用户的主题选择。

侧边栏导航

提供可折叠的侧边栏导航,在空间有限时保持良好的用户体验。

开发者工具

在开发模式下提供丰富的开发工具:

  • 性能监控 (FPS、内存使用)
  • 应用重载
  • 环境变量查看
  • 开发者工具切换

数据库管理

内置SQLite数据库支持,提供完整的数据库管理界面:

  • 数据库基本信息查看(版本、路径、表数量等)
  • 表列表展示及记录统计
  • 表结构查看
  • 表数据浏览(支持分页和搜索)
  • SQL查询和执行工具
  • 数据库操作API封装

项目结构

复制代码
├── electron/            # Electron 主进程代码
│   ├── db/              # 数据库相关代码
│   │   ├── models/      # 数据模型
│   │   ├── services/    # 数据服务
│   │   └── ...          # 数据库管理类和工具
│   ├── ipc/             # IPC 通信处理
│   ├── main.ts          # 主进程入口
│   └── preload.ts       # 预加载脚本
├── public/              # 静态资源
├── src/                 # 渲染进程源代码
│   ├── assets/          # 资源文件
│   ├── components/      # Vue 组件
│   ├── i18n/            # 国际化配置
│   ├── router/          # 路由配置
│   ├── stores/          # Pinia 状态管理
│   ├── types/           # TypeScript 类型定义
│   ├── views/           # 页面视图
│   │   ├── Database.vue # 数据库管理界面
│   │   └── ...          # 其他页面
│   ├── App.vue          # 根组件
│   ├── main.ts          # 渲染进程入口
│   └── style.css        # 全局样式
└── vite.config.ts       # Vite 配置

扩展指南

添加新页面

  1. src/views/ 创建新的页面组件
  2. src/router/index.ts 添加路由配置
  3. src/components/AppLayout.vue 添加导航项

添加新语言

  1. src/i18n/ 创建新的语言文件(复制现有文件并翻译)
  2. src/i18n/index.ts 中导入新语言并添加到支持列表

添加新数据模型

  1. electron/db/models/ 创建新的数据模型类
  2. electron/db/services/ 创建相应的服务类
  3. electron/ipc/dbHandlers.ts 添加相关IPC处理函数
  4. electron/preload.ts 暴露API给渲染进程

延伸(数据库ORM工具)

为了方便数据库操作延伸开发了SQLite的ORM工具

博客:《一个轻量级的 SQLite ORM 工具包》

项目地址:https://gitee.com/jl15988/quicklite

相关推荐
摸着石头过河的石头14 分钟前
JavaScript继承的多种实现方式详解
前端·javascript
Ashley的成长之路19 分钟前
NativeScript-Vue 开发指南:直接使用 Vue构建原生移动应用
前端·javascript·vue.js
朕的剑还未配妥19 分钟前
Vue 2 响应式系统常见问题与解决方案(包含_demo以下划线开头命名的变量导致响应式丢失问题)
前端·vue.js
JNU freshman1 小时前
Element Plus组件
前端·vue.js·vue3
软件技术NINI2 小时前
MATLAB疑难诊疗:从调试到优化的全攻略
javascript·css·python·html
知识分享小能手2 小时前
uni-app 入门学习教程,从入门到精通,uni-app组件 —— 知识点详解与实战案例(4)
前端·javascript·学习·微信小程序·小程序·前端框架·uni-app
长空任鸟飞_阿康2 小时前
在 Vue 3.5 中优雅地集成 wangEditor,并定制“AI 工具”下拉菜单(总结/润色/翻译)
前端·vue.js·人工智能
苏打水com2 小时前
从 HTML/CSS/JS 到 React:前端进阶的平滑过渡指南
前端·javascript·html
一枚前端小能手2 小时前
🔐 单点登录还在手动跳转?这几个SSO实现技巧让你的用户体验飞起来
前端·javascript
tianchang2 小时前
深入理解 JavaScript 异步机制:从语言语义到事件循环的全景图
前端·javascript