gitee地址
一、项目初始化
vue create manager-admin
cnpm i -S koa@2
cnpm install --global koa-generator
koa2 manager-server
cd manager-server
npm install
npm start
cnpm i koa2-cors -S
二、逻辑梳理
- 登录后,接口返回uid → 请求路由权限API
- 接口返回该用户对应路由权限列表(JSON,非树结构,含pid)
- 前端将JSON树形结构化
- 树形结构化 → vue路由结构
- 路由结构动态 → 静态路由
- 树形结构化数据 → 菜单组件
{
id: 2,
pid: 0,
path: '/course',
name: 'Course',
title: '课程管理'
},
{
id: 3,
pid: 2,
path: 'operate',
name: 'CourseOperate',
link: '/course/operate',
title: '课程操作'
},
- 全局的请求数据做在vuex的action里,在main.js里dispatch
- store/index.js 里引入 state.js mutation.js action.js
- libs/utils
- 前端的权限控制:根据后端返回的权限,做成动态路由