钩子函数
-
全局导航钩子:一般用来判断权限,以及页面丢失时需要执行的操作;
beforeEach()每次路由进入之前执行的函数。
afterEach()每次路由进入之后执行的函数。
beforeResolve()2.5新增 -
单个路由(实例钩子):某个指定路由跳转时需要执行的逻辑。
beforeEnter()
beforeLeave() -
组件路由钩子:
beforeRouteEnter()
beforeRouteLeave()
beforeRouteUpdate()
导航守卫回调参数
to:目标路由对象;
from:即将要离开的路由对象;
next:最重要的参数,把所有的路线连接起来
-
涉及到有next参数的钩子,必须调用next() 才能继续往下执行下一个钩子,否则路由跳转等会停止。
-
如果要中断当前的导航要调用next(false)。如果浏览器的 URL 改变了 (可能是用户手动或者浏览器后退按钮),那么 URL 地址会重置到from路由对应的地址。(主要用于登录验证不通过的处理)
-
next也可以这样使用,next(’/’) 或者 next({ path: ‘/’ }): 跳转到一个不同的地址。意思是当前的导航被中断,然后