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

291 阅读3分钟

基于最新前端技术栈vite7.1+vue3.5+pinia3+arco-design搭建网页版webos系统。

002360截图20250921094813198.png

016360截图20250921102605709.png

技术栈

  • 开发工具:VScode
  • 技术框架:vite7.1.2+vue3.5.18+vue-router4.5.1+pinia3
  • 组件库:arco-design^2.57.0 (字节桌面版vue3组件库)
  • 状态管理:pinia^3.0.3
  • 图表插件:echarts^6.0.0
  • 拖拽组件:sortablejs^1.15.6
  • 富文本编辑器:wangeditor^4.7.15
  • 模拟数据:mockjs^1.1.0
  • 样式编译:sass^1.92.1
  • 构建工具:vite^7.1.2

p5.gif

p1.gif

项目框架目录

使用最新前端构建工具vite7.1搭建项目模板,vue3 setup语法糖开发页面。

360截图20250921214758954.png

001360截图20250921094522830.png

002360截图20250921094813195.png

002360截图20250921094944555.png

002360截图20250921095031259.png

002360截图20250921095056195.png

002360截图20250921095118131.png

002360截图20250921095328813.png

003360截图20250921100439494.png

003360截图20250921100515516.png

vue3-webos桌面布局模板

d0160b23401028549b637e2704c2f95b_1289798-20250921220258539-1761515996.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 desktop flexbox flex-alignc flex-justifyc"
    :style="{'--themeSkin': appstate.config.skin}"
    @contextmenu.prevent
  >
    <component :is="DeskLayout[appstate.config.layout]" />
  </div>
</template>

796d487b420b90c4657546f18c970ba6_1289798-20250921220648101-1903519268.png

<template>
  <div class="vu__layout flexbox flex-col">
    <div class="vu__layout-header">
      <Toolbar />
    </div>
    <div class="vu__layout-body flex1 flexbox">
      <Desk />
    </div>
    <div class="vu__layout-footer">
      <Dock />
    </div>
    <!-- 悬浮球(辅助触控) -->
    <Touch />
  </div>
</template>

002360截图20250921095755020.png

002360截图20250921095859468.png

002360截图20250921100325669.png

002360截图20250921100347653.png

016360截图20250921102510340.png

016360截图20250921102541804.png

016360截图20250921103003815.png

vue3-webos桌面栅格布局

58284ee96fca73950cb550c646d3f2a2_1289798-20250921222655236-561615585.png

355daee60e7a05e886559bdf153943d6_1289798-20250921223120596-476540336.png

// 自定义桌面图标变量
const deskVariable = ref({
  '--icon-radius': '10px', // 圆角
  '--icon-size': '60px', // 图标尺寸(设置rpx自定义手机设备)
  '--icon-gap-col': '30px', // 水平间距
  '--icon-gap-row': '30px', // 垂直间距
  '--icon-labelSize': '12px', // 标签文字大小
  '--icon-labelColor': '#fff', // 标签颜色
  '--icon-fit': 'contain', // 图标自适应模式
})

桌面菜单配置

/**
 * ====== desk菜单配置项 ======
 * label 图标标题
 * imgico 图标(本地或网络图片) 支持Arco Design内置图标或自定义iconfont图标
 * path 跳转路由页面
 * link 跳转外部链接
 * hideLabel 是否隐藏图标标题
 * filter 是否禁用拖拽
 * background 自定义图标背景色
 * color 自定义图标颜色
 * size 栅格磁贴布局(16种) 1x1 ... 12x12
 * padding 内边距
 * onClick 点击图标回调函数
 * children 二级菜单
 */

a12e7e818e4cbb4e9deac75370250bf0_1289798-20250921223540693-1724561856.png

cc23ad46a81f0b46fdcaf96e2752ec80_1289798-20250921223644794-1374380836.png

const deskMenu = [
  {
    uid: '9a16fb90-12c4-11e1-840d-1a25c5bb775a',
    list: [
      ...
      {label: '日历', imgico: markRaw(Calendar4x2), size: '4x2'},
      {label: '每日箴言', imgico: markRaw(DayTalk), size: '3x2'},
      {label: '倒计时', imgico: markRaw(CountDown), size: '3x2'},
      {label: 'DeepSeek', imgico: 'https://cdn.deepseek.com/logo.png', link: 'https://chat.deepseek.com/', size: '2x1'},
      {label: 'Vite^7.1.2', imgico: 'https://vite.dev/logo.svg', link: 'https://vite.dev/'},
    ]
  },
  {
    uid: '9a16fb90-12c4-11e1-840d-1c25d5cc775a',
    list: [
      {label: 'Appstore', imgico: '/static/mac/appstore.png'},
      {label: '地图', imgico: '/static/mac/maps.png'},
      {label: '浏览器', imgico: '/static/mac/safari.png'},
      ...
    ]
  },
  {
    uid: '9a16fb90-12c4-11e1-840d-7d25e5ff775a',
    list: [
      {label: 'Vite7.1.2', imgico: 'vite.svg', link: 'https://vite.dev/', background: '#EAFAFF', padding: '20px', size: '2x2'},
      {label: 'Github', imgico: '/static/svg/github.svg', link: 'https://github.com/', background: '#607d8b', size: '2x1'},
      {label: '码云Gitee', imgico: '/static/svg/gitee.svg', link: 'https://gitee.com/', background: '#bb2124', size: '1x2'},
      ...
    ]
  },
  {
    uid: 'u738f210-807e-1e4e-1550-4deefac27e48',
    list: [
      {label: 'DeepSeek', imgico: 'https://cdn.deepseek.com/logo.png', link: 'https://chat.deepseek.com/', size: '3x2'},
      {label: '豆包', imgico: 'https://lf-flow-web-cdn.doubao.com/obj/flow-doubao/doubao/web/static/image/OnboardingAvatar.0f4f29a4.webp', size: '2x2'},
      ...
    ]
  },
  {
    uid: 'd141f210-207e-1e8e-9950-9heefyu27e48',
    list: [
      {label: 'Vite^7.1.2', imgico: 'https://vite.dev/logo.svg', link: 'https://vite.dev/'},
      {
        label: '编程开发',
        children: [
          {label: 'DeepSeek', imgico: 'https://www.faxianai.com/wp-content/uploads/2025/02/20250205134524-1febd.png', link: 'https://chat.deepseek.com/',},
          ...
        ]
      },
      {label: '首页', imgico: markRaw(IconHome), path: '/home', color: '#fff'},
      {
        label: '组件',
        children: [
          {label: '表格', imgico: '/static/svg/table.svg', path: '/components/table/all'},
          ...
        ]
      },
      {
        label: '个人中心',
        children: [
          {label: '主页', imgico: '/static/svg/my.svg', path: '/setting'},
          {label: '用户管理', imgico: markRaw(IconUser), path: '/user', color: '#fff'},
          ...
        ]
      },
      {
        label: '设置',
        children: [
          {label: '网站设置', imgico: '/static/svg/settings.svg', path: '/setting/system/website'},
          {label: '邮件服务', imgico: '/static/mac/mail.png', path: '/setting/system/mail'},
        ]
      },
      {
        label: '公众号', imgico: markRaw(IconWechat), color: '#07c160',
        onClick: () => {
          ...
        }
      },
    ]
  }
]

003360截图20250921100823676.png

004360截图20250921101102700.png

005360截图20250921101231939.png

006360截图20250921101542593.png

007360截图20250921101620597.png

009360截图20250921101832204.png

010360截图20250921102007791.png

011360截图20250921102125439.png

011360截图20250921102217934.png

012360截图20250921102250955.png

012360截图20250921102329055.png

016360截图20250921102903350.png

综上就是vite7+pinia3+arco-design搭建网页版os系统的一些项目分享,涉及到的知识点还是蛮全的,希望以上分享对大家有所帮助!

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

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

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

Vue3-Electron32-OS桌面os实例|electron32+vite5+arco实战os桌面

原创electron31+vite5.x+elementPlus桌面端后台管理系统

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

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