|
vor 3 Monaten | |
---|---|---|
public | vor 4 Monaten | |
src | vor 3 Monaten | |
.browserslistrc | vor 6 Monaten | |
.env.development | vor 3 Monaten | |
.env.production | vor 4 Monaten | |
.eslintrc.js | vor 6 Monaten | |
.gitignore | vor 6 Monaten | |
README.md | vor 6 Monaten | |
babel.config.js | vor 6 Monaten | |
jsconfig.json | vor 6 Monaten | |
package-lock.json | vor 4 Monaten | |
package.json | vor 4 Monaten | |
prettier.config.js | vor 6 Monaten | |
vue.config.js | vor 3 Monaten |
css
和 js
分离。建议每个组件以文件夹得形式存在 里面有.vue 文件和 css 在.vue 中引入同级目录的 css 即可
自动注册组件,避免大段的 import
eslint 代码检查集成 强制要求代码检查 做到代码风格统一
scss 全局注入 不用每处都引入 避免代码臃肿
axios 二次封装 自定义求配置 防抖请求 等等。。
当需要从后台获取权限的时候 需要去 router/private-routers.js 里面删除 privateRoutes 相关的引入
这里需要注意 userInfo 数据模型
userInfo = {
permission:[
'systemProgram', // 对应每一个路由的 name
'systemUser',
'systemRole',
'systemJurisdiction',
'systemDispatch',
'systemAudit',
'systemLog',
'systemConfig',
...
],
roles:[...],
user:[...]
}
管理为用户指定权限
通过权限列表查看当前项目的所有权限
当我们通过角色为用户指定到不同的权限之后 那么该用户就会在项目中体会到不同的权限功能
这一套关系就是我们所说的权限权限控制体系 也就是基于角色的权限 控制用户的访问
页面权限实现步骤如下:
登录从数据中拿到权限数据
私有路由表不被加到 routes 中
利用 addRoute API 动态添加到私有路由表
功能权限实现步骤如下:
登录从数据中拿到权限数据
定义隐藏按钮的方式(通过指令)
依据数据隐藏按钮
├── public 入口以及静态资源目录
│ ├── favicon.ico
│ └── index.html 入口 index.html
├── src 源码
├──.browserslistrc
├──.env.development 开发环境配置文件
├──.env.production 生产环境配置文件
├──.eslintrc.js eslint 匹配规则
├──.gitignore git 配置忽略文件
├──.babel.config.js babel 配置文件
├──.jsconfig.json js 编译配置文件
├── package-lock.json
├── package.json
├── prettier.config.js prettier插件格式话配置
├── README.md
├── tsconfig.json TS 配置
├── vue.config.js vue webpack 相关配置文件
└── yarn.lock
├── api api 接口地址方法文件
│ ├── ....js 具体看实例 自行天加
├── assets 静态资源
├── components 全局组件文件夹
├── http api 请求层封装
│ │ ├── axios.js 封装axios文件
│ │ └── index.js 封装axios get post 请求方法文件
├── layout 页面排版
│ ├── components 页面排版所需的组件文件夹
│ │ ├── AppMain 页面视图
│ │ └── NavBar 导航组件
│ └── index.vue 页面排版入口文件
├── router 路由配置 文件夹
│ ├──index.ts 路由配置 入口文件 (已经配置好大部分的路由)
│ ├──private-routes.js 私有路由表
│ └──public-routes.js 公开路由表
├── store 状态管理文件夹
│ ├── modules scss 样式目录入口文件全局加载 根据业务需求自行添加
│ │ ├── app.js 处理一部分业务逻辑state
│ │ └── app.js 处理登陆相关逻辑state
│ ├── getters.js getters 计算属性
│ └── index.js 状态管理入口文件
├── style scss 样式目录
│ ├── index.scss scss 样式目录入口文件全局加载
│ ├── color.scss scss 全局变量
│ ├── mixin.scss scss 全局函数 公用代码块
│ └── reset.scss 全局样式重置
├── utils 工具目录 预留 根据业务需求自行添加
├── views 视图目录
│ ├── err-page 404 401 视图文件目录
│ ├── home 首页视图 文件目录
│ └── login 登录视图 文件目录
├── App.vue App 入口文件
├── main.js 负责引导整个应用的起点 (自动注册组件在这里完成)
└── pemission.js 路由拦截处理
ECharts 官方文档
https://echarts.apache.org/zh/index.html
BigNumber 讲解
// 转为 bignumber
const x = new BigNumber('123456789.123456789')
// 转为 普通数字
x.toNumber()
// 格式化(小数点)
x.toFormat() // '123,456,789.123456789'
x.toFormat(3) // '123,456,789.123'
// 文档地址 https://mikemcl.github.io/bignumber.js/#bignumber
git 地址
// https://github.com/kutlugsahin/vue-smooth-dnd
文档地址
// http://relation-graph.com/#/docs/start
文档地址
// https://www.lodashjs.com/
安装依赖
yarn install
运行项目 (默认运行于 8080 端口,可在 vue.config.js 文件中修改)
npm serve
编译项目
npm build
MIT