vue中路由权限怎么动态的控制,不用加载不必要的路由配置?

如题:现在路由文件是配置好的,只是通过 v-if 把进入的菜单隐藏了,但是如果用户知道 url 还是可以进入页面。
请问在 router.js 文件中怎么获取到用户的权限信息?
请问有没有路由权限的最佳实践?通过全局路由守卫好像不太好。
谢谢。

阅读 3k
2 个回答

你的权限是存在那的呢
你获取完了权限可以用router的addRoutes()去手动加路由

核心思路:

根据 RBAC 用户角色权限来控制登录用户的角色拥有的权限,应该是一个字符串数组,其中的值与路由记录名称(或者路径)一一对应,在全局路由跳转钩子中统一判断当前路由是否在用户路由权限列表菜单中

重点注意:

  • 一定要在全局路由跳转处来判断路由权限,这样即使知道路由地址无权限用户也无法跳转
  • 前端路由配置可以采用预先定义好路由表,也可以使用 this.$router.addRoutes 动态注册路由

最佳实战:

iview-admin/src/router/index.js

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题