element-admin 路由权限根据后端路由表动态添加导航栏

此篇文章适合新手朋友,拿去就能用

只讲用法,不讲底层

  1. 打开src下的permission.js这个文件是路由拦截,画红圈的地方是调用vuex中获取后台返回路由表的接口在这里插入图片描述
  2. 这是element-admin原有的获取逻辑,你只需要把接口换成你的路由表接口然后再state中添加一个储存路由表的变量在这里进行调用就是画红圈的地方

filterAsyncRouter这是个方法,贴在下边

在这里插入图片描述

function filterAsyncRouter(asyncRouterMap) {
  return asyncRouterMap.filter(route => {
    if (route.component) {
      // Layout组件特殊处理
      if (route.component === 'Layout') {
        route.component = Layout
      } else {
        route.component = loadView(route.component)
      }
    }
    if (route.children != null && route.children && route.children.length) {
      route.children = filterAsyncRouter(route.children)
    }
    return true
  })
}

放到这个位置在这里插入图片描述

  1. 然后打开layout/commpoents/sidebar/index文件,这个是element-admin的侧边栏组件
    在这里插入图片描述
    像这样引用就可以了,由于我司的侧边栏又别的需求,代码不方便贴出来,到这里,你的侧边栏应该就可以使用了,

这是我参考网上诸多代码,合成的一个比较简单的,一种写法,和正规的差距还是很大的,但是勉强可以用,等之后学成了,在更新一版新的写法,本人经验有限,哪里操作有误的可以私信,看见必回

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

朝吾晚玖

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值