1. beforeRouteEnter
项目需要在进入某个页面前,判断从特定页面进来时,做某些处理。例如:只有从详情页回到列表页需要重新调接口。此时,用到了beforeRouteEnter方法。
// to 即将要进入的目标 路由对象
// from 当前导航正要离开的路由
// next() 下一步
beforeRouteEnter(to,from,next){
next ( vm => {
// vm 相当于 this
// beforeRouteEnter 守卫不能访问 this,因为守卫在导航确认前被调用,因此即将登场的新组件还没被创建。
})
}
2. beforeRouteLeave
页面离开时做的操作,例如:用户修改了页面某些字段,还没有保存就要离开当前页面。此时在页面离开前需要给用户提示
beforeRouteLeave(to, from, next) {
this.message();
next(); // 必须调用函数
},
message(){
Toast ('当前修改还未保存!');
}
注意:执行完要做的操作后,必须写 next();,否则页面不会执行下一步操作