在管理背景系统中,Vue-Router经常采取更多的措施。
因为在管理背景中,一个非常重要和常见的功能是用户权威的区别。一般用户,管理用户,超级管理员,审计用户等。
对于不同的用户,他们不仅必须测试界面并划分页面的授权。
例如:
以上所有这些实际上都与页面显示,路由的访谈以及接口的检查有关。如果当前用户是审计用户,则只能显示一些页面。如果是经理,则应隐藏一些页面。
此外,管理项目具有一组侧边栏作为不同功能页面的入口。
假设我们的路线和侧边栏是分离的逻辑,那么存在以下问题:
这似乎是我们的前端开发很严格。
因此,总而言之,Vue-Router希望实现此功能
那么,如何使用一组定义的路由器来满足上述三个需求?
首先,让我们仔细分析这三个需求的特定需求
我不需要对页面上的安装组件说更多,vue-router最初是通过这样做的
不同用户角色的差异用户通常存储在数据库中。用户登录后,返回了背景的接口。例如,此字段是,那么我们如何才能在这里实现动态路由区别?
复杂的侧边侧边栏的侧边栏是管理背景的函数。这是vue-element-admin.的实现,本质上,路由器是JavaScript的数组对象。它遍历此对象,并使用Elementui的El-Menu组件来生成侧边栏。
如果路由器更改,则侧边栏也会更改。
我们首先定义一个整体路由器对象。该对象是整个项目中的所有页面路由,也是超级管理员的默认访问权限。该对象的每个路由对象都可以包含以下属性或方法:
然后我们在index.js中实现路由器安装
当用户登录时,我们首先获得用户的角色,然后将其放入VUEX中存储它,然后我们可以根据用户的角色动态地计算权限权利。
在这一点上,整个路由器都是编写的,路由器可以准备动态生成的侧边栏。侧边栏的逻辑更为复杂,因此我还拆除了三个文件
这是文件的目录:
然后实现动态侧边栏的逻辑
这样,我们的全部需求就完成了,然后正常引入侧边栏组件,并且可以添加其自己的样式。
最后,该代码尚未进行测试。如果您有任何疑问,请让我发出私人信息或评论。谢谢。
作者:阳光同学