Electron38-Vite7Admin后台系统|vue3+electron38+element-plus客户端后台管理

372 阅读1分钟

2025最新跨平台新作electron38+vite7+vue3+pinia3+elementPlus桌面端后台admin系统。

360截图20250927220232388.png

002360截图20250927231007703.png

技术知识点

  • 跨平台框架:electron^38.1.2
  • 前端框架:vite^7.1.7+vue^3.5.21+vue-router^4.5.1
  • UI组件库:element-plus^2.11.3
  • 状态管理:pinia^3.0.3
  • 国际化方案:vue-i18n^11.1.12
  • 图表组件:echarts^6.0.0
  • markdown编辑器:md-editor-v3^6.0.1
  • 模拟数据:mockjs^1.1.0
  • 打包工具:electron-builder^24.13.3
  • electron+vite整合插件:vite-plugin-electron^0.29.0

p2.gif

p4.gif

使用最新跨平台框架electron38+vite7搭建项目,vue3 setup语法糖编码开发。

360截图20250927220018264.png.png

p1-1.gif

360截图20250927222513553.png

360截图20250927223442641.png

360截图20250927224625469.png

008360截图20250927234849127.png

009360截图20250927235108716.png

electron进程配置

/**
 * electron主进程配置
 * @author andy
 */

import { app, BrowserWindow } from 'electron'

import { WindowManager } from '../src/windows/index.js'

// 忽略安全警告提示 Electron Security Warning (Insecure Content-Security-Policy)
process.env['ELECTRON_DISABLE_SECURITY_WARNINGS'] = true

const createWindow = () => {
  let win = new WindowManager()
  win.create({isMajor: true})
  // 系统托盘管理
  win.trayManager()
  // 监听ipcMain事件
  win.ipcManager()
}

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

  app.on('activate', () => {
    if(BrowserWindow.getAllWindows().length === 0) createWindow()
  })
})

app.on('window-all-closed', () => {
  if(process.platform !== 'darwin') app.quit()
})

010360截图20250927235449672.png

011360截图20250927235755916.png

011360截图20250927235850206.png

012360截图20250928000309723.png

016360截图20250928000837385.png

electron38-admin布局模板

f421c9b8f945563a663c8bc876bb3b7e_1289798-20250928084102365-861716096.png

ac7f37e36c4a7d36e67f2c83fd5a35a4_1289798-20250928084157925-768517553.png

<script setup>
  import { appState } from '@/pinia/modules/app'

  // 引入布局模板
  import Classic from './template/classic/index.vue'
  import Columns from './template/columns/index.vue'
  import Vertical from './template/vertical/index.vue'
  import Horizontal from './template/horizontal/index.vue'

  const appstate = appState()

  const LayoutMap = {
    'classic': Classic,
    'columns': Columns,
    'vertical': Vertical,
    'horizontal': Horizontal
  }
</script>

<template>
  <div class="vuadmin__container" :style="{'--themeSkin': appstate.config.skin}">
    <component :is="LayoutMap[appstate.config.layout]" />
  </div>
</template>

360截图20250927225006085.png

基于electron38+vite7+vue3 setup+elementPlus电脑端仿微信/QQ聊天软件

最新版Vite7+Vue3+Pinia3+ArcoDesign网页版webos后台管理系统

基于uniapp+vue3+uvue短视频+聊天+直播app系统

基于uniapp+vue3+deepseek+markdown搭建app版流式输出AI模板

vue3.5+deepseek+arco+markdown搭建web版流式输出AI模板

unios-admin手机版后台|uniapp+vue3全端admin管理系统

基于flutter3.32+window_manager仿macOS/Wins风格桌面os系统

flutter3.27+bitsdojo_window电脑端仿微信Exe应用

自研tauri2.0+vite6.x+vue3+rust+arco-design桌面版os管理系统Tauri2-ViteOS

基于uni-app+vue3+uvui跨三端仿微信app聊天模板

Flutter3.x深度融合短视频+直播+聊天app实例

自研tauri2.0+vite5+vue3+element-plus电脑版exe聊天系统Vue3-Tauri2Chat