场景是,表单填写页面 默认返回首页,有特定按钮返回首页,但是移动端IOS 支持滑动返回上级路由,这样表单成功页面会回到填写表单填写的最后一个步骤页面,如果使用replace,那表单填写步骤之间的页面就不能返回了,所以针对次场景,对填写成功页面做路由守卫监听,控制路由全部指向首页
beforeRouteLeave(to, from, next) {
if (to.path === '/home') {
// 判断要去的页面 如果是要去的目的页面就继续,(第二次进入该路由守卫)
next();
} else {
if (from.path !=='/home') {
// 判断来的页面是不是目的页面,是的话就继续
next();
}
// 不是的话就重新指定路由,重新指定路由后会第二次进入路由守卫
this.$router.push({ path:'/home' });
}
},