全局前置守卫

当访问某路由之前可以实现拦下来的效果。
下面的功能可以实现禁止进入“/about”路由,当想要进去的时候会跳转到主界面,其他的会正常。这里需要注意,一般加上这个else会更好,不然会报警告。


//全局前置守卫
router.beforeEach((to, from, next)=> {
  console.log("to: ", to);
  console.log("from: " , from)
  if(to.path == "/about"){
    next("/")
  }else{
    next()
  }
})

在这里插入图片描述
实际使用:

// 导航全局守卫
router.beforeEach((to, from, next) => {
  const userInfo = JSON.parse(sessionStorage.getItem('userInfo'));
  // 登录或者注册界面 直接放行
  if (to.path == '/login' || to.path == '/sign') {
    next();
    return;
  }
  // 没登陆就去登录
  if ( userInfo == null) {
    alert('您还没有登录,请先登录');
    next('/login');
    return;
  }else{
    if (to.path.indexOf('/zhao/') != -1 && userInfo.type != 1) {
      // console.log(to.path)
      alert('对不起,您无权访问....');
      next(from.path)
      return;

    }
    if (to.path.indexOf('/tou/') != -1 && userInfo.type != 2) {
      console.log(userInfo)
      alert('对不起,您无权访问....');
      next(from.path)
      return;

    }
    if (to.path.includes('/manage/') && userInfo.type != 0) {
      // console.log('tou')
      alert('对不起,您无权访问....');
      next(from.path)
      return;

    } 
    next();
  }
  
})
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值