play.md 3.5 KB

项目:大屏数据展示(Vue2)

一、项目基础信息

  • 项目名称:大屏数据展示
  • 技术栈
    • 框架:Vue 2.7.x
    • 构建工具:@vue/cli 4/5
    • UI组件库:Element UI(完整引入)
    • 状态管理:Vuex 3.x
    • 路由:Vue Router 3.x
    • HTTP请求:axios
    • 图表:ECharts 5
    • 工具库:js-md5(用于密码加密)
    • CSS预处理器:Sass(使用 node-sasssass
    • 包管理器:npm
  • Node版本要求:>= 14.0

二、核心功能需求

  • 构建一个典型的大屏数据展示系统,分辨率尺寸为9600*2800px
  • 包含以下完整页面:

1. 登录页(Login)

  • 表单:用户名/手机号、密码(密码使用 js-md5 加密后模拟提交)
  • 验证码(可选,可用模拟验证码 0000)
  • 登录按钮,点击后调用模拟登录API(使用 axios,可先mock数据)
  • 登录成功后保存token(使用Vuex存储)并跳转到首页
  • 该页面样式你自行发挥 主要配色与UI图相近即可

2. 大屏页面

  • 该页面应由多个组件组成
  • 如 实验室事件情况统计 为一个组件 实实验室安全合格统计为一个组件 如此类推
  • 页面样式严格按照 UI图 样式 项目基础尺寸严格按照9600*2800px制作

三、设计风格与规范

  • 样式:统一使用Sass编写自定义样式,变量文件统一管理

四、执行计划

步骤1:初始化项目骨架

  • 使用 vue create 创建项目,选择以下特性:
    • Babel
    • Router(使用history模式)
    • Vuex
    • CSS Pre-processors(选择Sass/SCSS)
  • 删除默认的HelloWorld组件,清理App.vue
  • 安装依赖:element-uiaxiosechartsjs-md5
  • main.js 中完整引入Element UI和样式
  • 创建基本目录结构: src/ api/ # axios接口封装 assets/ # 静态资源 components/ # 公共组件 router/ # 路由配置 store/ # Vuex模块 styles/ # 全局样式 utils/ # 工具函数 views/ # 页面视图

  • 配置 vue.config.js(如有必要,可设置别名等)

步骤2:配置路由和基础布局

  • router/index.js 中配置登录页(/login)
  • App.vue 中放置路由视图

步骤3:实现页面

  • 实现 大屏页面
  • 页面中的视频相关功能不用实现 后期我来处理 只需提供基础box与样式即可

    五、附加说明

  • 所有API请求先在 src/api 中用 setTimeout 模拟返回数据,便于独立开发

  • 代码风格使用函数式组件(Vue2 Options API即可)

  • 注释:复杂逻辑(如图表初始化、加密)需添加注释

开始执行吧

修改页面

  • 观察UI图 调整4个大区域的比例

修改页面

  • 调整4个区域比例 从左至右 第一个区域占比20% 第二个区域占比15% 第三个区域占比45% 第四个区域占比20%

修改页面-解析 call-word\index-v2.html 文件

  1. 解析文件 把页面中的内容拆分到我的项目中替换原有组件

读取新的UI图

  • @call-word/UI.png
  • 检查重构的页面是否一致

排版布局错误 修改组件尺寸

  1. 左侧第一个列 从上到下的组件应是
  2. 实验室基本情况统计 宽1892 高956
  3. 实验室安全分级统计 宽1892 高1017
  4. 实验室进入人数统计及走势 宽1892 高591
  5. 左侧第二个列 从上到下的组件应是
  6. 智能环境感知应用设备统计 宽1414 高666
  7. 实验室设备分类及使用统计 宽1414 高1916
  8. 左侧第三个列
  9. 实时监控 宽4282 高2600
  10. 左侧第四个列 从上到下的组件应是
  11. 实验环境安全智能感知 宽1892 高1807
  12. 实验室实时风险预警 宽1892 高775