vue-router 路由钩子函数是什么?执行顺序是什么?

Vue Router的路由钩子函数‌是在路由跳转的不同阶段执行的函数,用于在路由发生变化时执行特定的操作或逻辑

Vue-Router的路由钩子函数主要包括全局钩子函数、路由独享的钩子函数和组件内的钩子函数。

全局钩子函数

beforeEach

在路由跳转之前执行,用于进行权限判断、加载数据等操作。

它接收三个参数:to(即将进入的路由对象)、from(当前导航即将离开的路由对象)和next(一个必须调用的函数,用于解析钩子)。

beforeResolve(2.5+)

在路由被解析之后,但在组件被渲染之前执行。

afterEach

在路由跳转之后执行,通常用于进行页面跳转后的收尾工作,如页面标题的更新等。

路由独享的钩子函数

beforeEnter

在路由配置中定义,只在进入该路由时执行。

组件内的钩子函数

beforeRouteEnter

在路由进入之前被调用,此时组件实例还未被创建,不能访问this。

beforeRouteUpdate(2.2+)

在当前路由改变,但是该组件被复用时调用,如路由参数变化时。

beforeRouteLeave

在离开当前路由时调用。

执行顺序‌如下:

  1. 导航被触发。
  2. 在失活的组件里调用beforeRouteLeave守卫。
  3. 调用全局的beforeEach守卫。
  4. 在重用的组件里调用beforeRouteUpdate守卫(2.2+)。
  5. 在路由配置里调用beforeEnter
  6. 解析异步路由组件。
  7. 在被激活的组件里调用beforeRouteEnter
  8. 调用全局的beforeResolve守卫(2.5+)。
  9. 导航被确认。
  10. 调用全局的afterEach钩子。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值