现在使用vue.js的项目越来越多,后台管理系统权限控制必不可少。
本项目是参照了 vue-element-admin 项目,根据自己的实际情况修改而成。
实现方式各不一致,但大体思路是一致的。
1、输入用户名、密码登录;
2、登录成功,通过接口获取权限列表;
3、router.beforeEach里递归筛选权限,并使用router.addRoutes动态添加路由,同时存入vuex里;
4、通过vuex的路由数据,生成菜单树;
5、刷新页面,重新获取权限列表,重新生成权限树。
项目中没有调用后台接口,通过Promise模拟了4个不同权限的账号用作测试。