2025最新实战研发vite7.1+electron38.2+vue3.5+pinia3+arcoDesign桌面客户端仿macOS/windows管理系统。
electron38-vue3-osadmin支持macos/windows风格。提供了表格、表单、图表、列表、编辑器、错误处理等后台业务场景。
项目知识点
- 开发工具:VScode
- 跨平台框架:electron^38.2.0
- 前端技术框架:vite^7.1.7+vue^3.5.21+vue-router^4.5.1
- 组件库:@arco-design/web-vue^2.57.0 (字节前端vue3组件库)
- 状态管理:pinia^3.0.3
- 拖拽插件:sortablejs^1.15.6
- 图表组件: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
项目框架结构
electron38-vue3os使用最新跨平台技术Electron38+Vite7构建项目模板。
项目入口文件main.js
import { createApp } from 'vue' import './style.scss' import App from './App.vue' import { launchApp } from '@/windows/actions' // 引入路由及状态管理 import Router from './router' import Pinia from './pinia' // 引入插件 import Plugins from './plugins' launchApp().then(config => { if(config) { // 全局存储窗口配置 window.config = config } // 初始化app实例 createApp(App) .use(Router) .use(Pinia) .use(Plugins) .mount('#app') })
Electron38-OS桌面布局
<!-- 桌面模板 --> <script setup> import { appState } from '@/pinia/modules/app' // 引入布局模板 import MacosLayout from './template/macos.vue' import WindowsLayout from './template/windows.vue' const appstate = appState() const DeskLayout = { macos: MacosLayout, windows: WindowsLayout } </script> <template> <div class="vu__container" :style="{'--themeSkin': appstate.config.skin}"> <component :is="DeskLayout[appstate.config.layout]" /> </div> </template>
<script setup> import Wintool from '@/layouts/components/wintool/index.vue' import Desk from '@/layouts/components/mac/desk.vue' import Dock from '@/layouts/components/mac/dock.vue' </script> <template> <div class="vu__layout flexbox flex-col"> <div class="vu__layout-header"> <Wintool /> </div> <div class="vu__layout-body flex1 flexbox"> <Desk /> </div> <div class="vu__layout-footer"> <Dock /> </div> </div> </template>
原创开发不易,感谢各位小伙伴的阅读与支持!