Redirected when going from "x" to "y" via a navigation guard
需求:
进入Mine页面前, 判断用户是否登录,若登录,则直接进入该页面,否则进入Login进行登录,登录成功后跳转到Mine页面。
Mine里面的代码:
Login里面的部分代码:
当我在Login组件登录成功时,报错:Error: Redirected when going from "/login?redirect=%2Fmine" to "/mine" via a navigation guard.
找了很久也没找到问题在在哪,求指导!十分感谢!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
1.终于发现问题所在,问题主要出现在Login组件中。
2.
this.$store.dispatch('getUserInfo', { phone, code })
为异步操作,并不会立刻执行,代码会先执行下一步this.$router.push(this.$route.query.redirect)
,当从Login跳转到Mine页面时,userInfo还没有请求到,因此当进入Min时会判定用户没有登录,又再次跳转到Login页面,重复的重定向引起vue-router报错。3.解决办法也很简单