这些都是通过VUEX全局管理控制的(补充说在这里插入代码片明: 刷新页面后vuex的内容也会丢失)
具体实施: 首先做一个静态登入页面,两个input的框, 一个登录账号,一个登录密码,在放置一个登录按钮...具体实现
创建vue实例的时候将vue-router挂载 , 但这个时候vue-router挂载一些登录或者不用权限的公用的页面
当用户登录后, 获取用role, 将role和路由表每个页面需要的权限作比较...new Router({
routers: 上面的路由})
异步挂载路由: 动态需要根据权限加载路由表,在这里我们根据vue-router官方推荐的方法meta路线元字段(可以meta在定义路径时包含字段....catch(err => {console.log(err)})
如果当有用户权限的时候,说明所有可访问路由已生成 ,
如果没权限的页面会自动进入404页面
如果页面没有token时,
如果在页面登入的白名单中...== -1){next()},
否则全部重定向到登入页面
下面是store/permission.js
这里就是干一件是,通过用户权限和之前在router.js里面asyncRouterMap的每一个页面所需要的权限做匹配