# 云智控大屏系统 基于 Vue3 + Element Plus 的数据可视化大屏系统,支持 4800x1600 大屏自适应缩放。 ## 功能特性 - **Vue3 Composition API** - 使用最新的 Vue3 语法 - **Element Plus** - 企业级 UI 组件库 - **模块化路由** - 清晰的路由结构,支持路由守卫 - **Axios 封装** - 统一的请求拦截、错误处理 - **SM4 加解密** - 国密算法支持(需要后端配合) - **自适应缩放** - 根据浏览器窗口自动缩放到指定尺寸 - **大屏样式** - 深色主题,科技感设计 ## 页面结构 ``` src/ ├── views/ │ ├── login/ # 登录页 │ ├── layout/ # 布局组件 │ ├── home/ # 首页 │ ├── dashboard/ # 数据大屏 │ └── error/ # 错误页面(404/500) ├── utils/ │ ├── request.js # Axios 请求封装 │ ├── sm4.js # SM4 加解密 │ ├── scale.js # 大屏缩放工具 │ └── format.js # 格式化工具 ├── router/ │ └── index.js # 路由配置 └── styles/ └── global.scss # 全局样式 ``` ## 快速开始 ### 安装依赖 ```bash npm install ``` ### 启动开发服务器 ```bash npm run dev ``` ### 构建生产版本 ```bash npm run build ``` ## 默认登录账号 - 用户名:admin - 密码:admin123 ## 大屏配置 页面默认尺寸为 **4800 x 1600**,系统会自动根据浏览器窗口缩放。 如需修改尺寸,修改以下文件: - `src/utils/scale.js` - 修改 `baseWidth` 和 `baseHeight` ## 接口配置 修改 `src/utils/request.js` 中的 `baseURL`,或创建 `.env` 文件: ```env VITE_API_BASE_URL=http://your-api-server.com/api ``` ## SM4 加密 系统默认使用 SM4 加密传输数据。如需调整: 1. 修改 `src/utils/sm4.js` 中的 `defaultKey` 2. 确保后端使用相同的密钥 如不需要加密,可以修改 `request.js` 中的请求拦截器。 ## 路由说明 | 路径 | 页面 | 需要认证 | |------|------|----------| | /login | 登录页 | 否 | | /home | 首页 | 是 | | /dashboard | 数据大屏 | 是 | | /404 | 404错误页 | 否 | | /500 | 500错误页 | 否 | ## 静态资源使用 ### 目录结构 ``` public/ # 不经过构建处理的静态资源 ├── imgs/ # 全局图片(logo、背景图等) ├── js/ # 第三方JS库 ├── fonts/ # 字体文件 └── data/ # 静态JSON数据 src/assets/ # 需要构建处理的资源 ├── imgs/ # 组件级图片 ├── icons/ # SVG图标 └── styles/ # SCSS样式文件 ``` ### 使用示例 **public 目录资源(直接通过根路径访问):** ```vue ``` **assets 目录资源(通过别名访问):** ```vue ``` **加载静态JSON数据:** ```javascript import { loadJsonData } from '@/utils/assets' const config = await loadJsonData('config.json') ``` ## 项目结构 ``` yun3v2/ ├── index.html ├── package.json ├── vite.config.js ├── src/ │ ├── main.js │ ├── App.vue │ ├── views/ │ ├── utils/ │ ├── router/ │ └── styles/ └── README.md ``` ## 技术栈 - Vue 3.4 - Vue Router 4.3 - Pinia 2.1 - Element Plus 2.6 - Axios 1.6 - Vite 5.1 - SCSS