亲宝软件园·资讯

展开

vuerouter beforeeach 关于vue-router的beforeEach无限循环的问题解决

安木贝神 人气:0
想了解关于vue-router的beforeEach无限循环的问题解决的相关内容吗,安木贝神在本文为您仔细讲解vuerouter beforeeach的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:vuerouter,beforeeach,vue,beforeeach,下面大家一起来学习吧。

最近在使用vue-router的beforeEach钩子时候遇到了一个问题,就是在beforeEach()中设置好判断条件后出现了无限循环的问题
代码如下:

router.beforeEach((to, from, next) => {
 if(isLogin){
  next()
 }else{
  console.log('测试')
  next('login')
 }
})

结果chrome的debug中看到:

这个问题我是这样理解的:

router.beforeEach((to, from, next) => {
  if(true){
    next()
  }else{
    next('login')
  }
})

也就是说beforeEach()必须调用next(),否则就会出现无限循环,next() 和 next('xxx') 是不一样的,区别就是前者不会再次调用router.beforeEach(),后者会!!!

官网这样写的(主要是红线标记的那句!):

加载全部内容

相关教程
猜你喜欢
用户评论