打开一个页面a,然后token过期,自动跳回登录页,通过路由传参的方式将页面a的路径传给登录页,登录成功之后,在使用参数跳转回页面a,但是这时候页面a右上角有一个返回按钮,里面是$router.back(),这时候点击返回按钮,就直接返回了登录页,然后登陆之后又返回页面a,页面a点击返回又回到登录页,一直往复循环,请问有没有什么好的解决方案
1 回答

缥缈止盈
TA贡献2041条经验 获得超4个赞
建议你这样试试看:
登录页跳转到A页面的时候使用router.replace方法, 替换掉当前的路由栈
在A页面写路由守卫beforeRouteLeave钩子函数,判断将要去的页面是否为登录页面,如果是则不执行next方法
两种方式的优劣
第一种方式比较简单直接,而且代码较容易维护
第二种路由守卫的方式虽然可以解决问题单有点杀鸡用牛刀的意味了,针对你的需求,从代码维护角度考虑,有点成本。
添加回答
举报
0/150
提交
取消