VUE动态导航守卫


router.beforeEach((to, from, next) => {
  const userInfo = JSON.parse(sessionStorage.getItem('info'))
  const list = ['首页', '', '年度检查计划']
  console.log(to.meta.title, 'to.name')

  if (list.includes(to.meta.title)) {
    console.log(userInfo, 'userInfouserInfouserInfouserInfo')
    next()
  } else {
    router.push({ path: '/notAuth' })
  }
})

动态导航守卫如图所示,只负责阻拦用户通过地址栏位置拼上去的问题,不负责解决显示隐藏问题,显示隐藏还是由条件判定更改。

userInfo是用户信息,后端在登录时将用户信息权限反给前端,由前端进行处理,然后判断数组中是否存在当前打开的地址栏title名字,此处也可以用name代替,该项目需要为title,用的就是title


版权声明:本文为weixin_51263829原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。