beforeRouteEnter是在组件内定义的路由导航守卫,使用方式:
beforeRouterEnter(to,from,next){
next((vm)=>{
})
},
是支持给next传递回调的唯一守卫,回调的参数vm是当前vue实例。
在组件创建时,不仅执行created钩子,同时也会执行beforeRouteEnter。那么,什么时候使用created,什么时候使用beforeRouteEnter?
1、触发的时机
只有组件在创建时,才会触发created。
每次进入路由时,都会触发beforeRouteEnter。
所以,当一个页面使用了keep-alive进行了缓存时,离开这个页面后再次进入时,不会再触发created,但是会触发beforeRouteEnter。
所以,beforeRouteEnter一般会配合keep-alive使用。
2、获取前一个路由的参数
beforeRouterEnter的参数中,可以获取到前一个路由的参数。