1.全局导航钩子
前置钩子函数:router.beforeEach((to,from,next){})
后置钩子函数:router.afterEach((to,from)=>{})
全局解析守卫: router.beforeResolve()
2.单个路由导航钩子
实际上是在路由规则上配置的
beforeEnter
3.组件导航钩子
beforeRouteEnter渲染该路由对应组件前调用
beforeRouteUpdate路由改变,但依然渲染该组件时调用
beforeRouteLeave导航离开该组件时调用
参数解释
to:表示去的路由
from:表示去的路由
next:调用方法
next()表示继续执行
next("/home")或者next({path:"/home"}表示跳转
next(false)表示中断,回到from
next(error)表示错误
调用顺序
路由跳转
1.组件内的beforeRouteLeave
2.全局beforeEach
3.组件beforeRouteUpdate
4.路由beforeEnter
5.组件beforeRouteEnter
6.全局beforeResolve
7.全局afterEach