Electron38.2实战客户端OS系统|vite7+vue3+electron仿mac/wins桌面

举报
yxybox 发表于 2025/10/13 07:11:01 2025/10/13
【摘要】 最新版原创新作Electron38.2+Vite7+Vue3 setup+ArcoDesign+Echarts仿Mac/Wins风格客户端OS后台系统解决方案。

国庆期间爆肝研发,最新款跨平台electron38+vite7+vue3搭建桌面端后台OS管理系统


360截图20251010215555401.png

004360截图20251010234314484.png

002360截图20251010230146790.png


运用技术

  • 编辑器: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


p2.gif

p3-4.gif

p4.gif


项目框架目录

最新跨平台框架Electron38.2结合Vite7.1构建工具搭建项目模板。整个项目采用vue3 setup语法开发。


360截图20251010223344923.png

360截图20251010215230696.png

360截图20251010221850764.png

001360截图20251010232413701.png

002360截图20251010225202104.png

002360截图20251010225357519.png

002360截图20251010233227194.png

002360截图20251010233533226.png

003360截图20251010233604122.png

003360截图20251010233810969.png

006360截图20251010235823142.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()
})

入口文件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')
})


002360截图20251010225357520.png

003360截图20251010233740551.png

006360截图20251010235634592.png

007360截图20251011000012782.png

007360截图20251011000225629.png

008360截图20251011000350229.png

009360截图20251011000722805.png

010360截图20251011001137524.png

010360截图20251011001311035.png

010360截图20251011001342429.png

011360截图20251011001615754.png

011360截图20251011001742939.png

013360截图20251011002036842.png

014360截图20251011002507985.png

016360截图20251011002744009.png

017360截图20251011002905882.png

020360截图20251011080353733.png

020360截图20251011080936964.png

024360截图20251011091748523.png


项目布局模板

如上图:内置了macos和windows两种桌面布局模板。

<!-- 桌面模板 -->

<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>

360截图20251010222226999.png


Ok,综上electron38+vue3搭建客户端os系统的一些项目分享,希望对大家有帮助!

2025最新款Electron38+Vite7+Vue3+ElementPlus桌面客户端后台管理系统Exe

最新研发vite7.0+electron38客户端仿微信EXE聊天软件

原创tauri2.0+vue3.5+element-plus桌面版后台管理系统

Electron32-Vite5-OS跨平台os模板|electron32+vue3通用os系统

Flutter3.32实战桌面端OS系统|flutter3仿macOS桌面

flutter3.27跨平台仿微信客户端聊天Exe程序|朋友圈|短视频

原创uniapp+vite5+vue3+uv-ui跨三端短视频+直播+聊天app应用

uni-app+deepseek-v3跨三端ai流式输出对话模板

flutter3+deepseek手机端ai流式输出聊天模板

实战跨平台Electron35+DeepSeek-V3搭建客户端AI模板

deepseek-v3+vue3.5网页版webai流式对话模板

Flutter3.27跨平台仿抖音商城|flutter3.x实战短视频+直播+聊天程序

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。