这两天在写的人力资源后台管理项目中,有一个颇有意思的功能设计。
根据每个用户的身份不同,他们能够操作的功能和可以进入的界面也各不相同。具体如下图所示:
功能难点
1.首先需要解决的就是不同身份的用户在登陆后,他可以操作的界面也不同。
这个问题的根源就是:如何在不同用户登陆后,改变为不同的路由配置。
这里首先就应该想到 动态路由添加(addroutes)
然而在代码的哪个执行阶段添加呢?
结合我们之前对需求的刨析,得出关键词(登陆后),那么我们直接锁定登录之后的路由跳转过程,也就是在路由守卫中进行操作。
这一步的总体思路即为,在Vuex中发起用户详细信息请求并return返回,通过变量menu接收用户可以访问的界面 数据。
然后将可以访问的路由数据添加给路由配置项。
最后把路由数据存到Vuex中。
随后通过循环这组数据,在sidebar组件中渲染出来