页面开发

介绍

本前端项目基于vue-element-admin的基础模版进行了二次开发,查看官方文档以了解更多关于vue-element-admin。

了解目录结构,路由和菜单权限配置后,即可进行简单的页面开发。


环境和工具

安装

node.js版本:14.17.x或16.x.x

vue-cli:vue脚手架工具(查看文档)。

VSCode插件:

  1. Vue工具:Vetur
  2. 代码校验:ESLint
  3. 代码格式化:Prettier - Code formatter
需了解

vue2.xvueRoutervuex


目录结构

├── build                      # 构建相关
├── mock                       # 项目mock 模拟数据
├── plop-templates             # 基本模板
├── public                     # 静态资源
│        │── config.js                             # 全局配置文件
│        │── locales                                 # 多语言文本
│        │── iconFont-                             # 字体图标文件
│        │── modifyConfig_                     # 打包环境配置脚本
│   │── favicon.ico            # favicon图标
│   └── index.html             # html模板
├── src                        # 源代码
│   ├── api                    # 所有请求
│   ├── assets                 # 主题等静态资源
│   ├── components             # 全局公用组件
│   ├── directive              # 全局指令
│   ├── filters                # 全局 filter
│   ├── icons                  # 项目所有 svg icons
│   ├── lang                   # 国际化 language
│   ├── layout                 # 全局 layout
│   ├── router                 # 路由
│   ├── store                  # 全局 store管理
│   ├── styles                 # 全局样式
│   ├── utils                  # 全局公用方法
│   ├── vendor                 # 公用vendor
│   ├── views                  # views 所有页面
│   ├── App.vue                # 入口页面
│   ├── main.js                # 入口文件 加载组件 初始化等
│   └── permission.js          # 权限管理
├── tests                      # 测试
├── .env.xxx                   # 环境变量配置
├── .eslintrc.js               # eslint 配置项
├── .babelrc                   # babel-loader 配置
├── .travis.yml                # 自动化CI配置
├── vue.config.js              # vue-cli 配置
├── postcss.config.js          # postcss 配置
└── package.json               # package.json

配置路由

查看官方文档了解如何配置路由。

本项目的路由权限与官方文档有所不同,是由后台配置的菜单控制的。菜单名称、icon、层级也是由后台配置,详见菜单配置

示例:

{
  path: '/permission',
  component: Layout,
  redirect: '/permission/index', //重定向地址,在面包屑中点击会重定向去的地址
  hidden: true, // 不在侧边栏显示
  meta: { title:"title" }, //这里设置的title只会在开发模式下的开发菜单中显示
  children: [{
    path: 'index',
    component: ()=>import('permission/index'),
    name: 'permission',
    meta: {
      title: 'permission',//这里设置的title只会在开发模式下的开发菜单中显示
    }
  }]
}

路由配置文件位置:/src/router

在modules文件夹中新建或找到对应的模块进行添加路由,并确保在index.js中引入。

├── devMenu.js
├── index.js
└── modules
    ├── alarm.js
    ├── basicData.js
    ├── configuration.js
    ├── demandAnalysis.js
    ├── energyAnalysis.js
    ├── example.js
    ├── log.js
    ├── monitor.js
    ├── operationMangement.js
    ├── powerQuality.js
    └── prepayment
        ├── basicData.js
        ├── financial.js
        ├── user.js
        └── userReport.js

配置菜单

在系统设置->菜单管理中配置菜单,如有新增,则需要在角色管理中配置菜单权限。

  • 菜单地址需要与路由path严格一致,规则也与路由path一致,可以是绝对地址(前面有“/”,并写全路径),也可以是相对地址(前面没有“/”,只写一个path)。
  • 菜单名称对应中文名称。
  • 菜单类型有模块、菜单、按钮三种。按钮控制对应页面的菜单权限。
  • 排序对应菜单显示顺序。
  • 国际化栏不必填,不起作用。
  • 字体图标只能选择,上传图标可以传任意png图片。

如下图:

image-20220119154634880

results matching ""

    No results matching ""