Vue中的路由导航守卫有哪些?它们的执行顺序是什么?

简介: Vue中的路由导航守卫有哪些?它们的执行顺序是什么?

在 Vue 中,有以下三种路由导航守卫:

  • 全局守卫:
    • router.beforeEach:在进入每个路由之前执行。回调函数中有三个参数,to表示进入到哪个路由,from表示从哪个路由离开,next是一个函数,用于决定是否展示要看到的路由页面。
    • router.afterEach:在离开每个路由之后执行。回调函数中有两个参数,to表示进入到哪个路由,from表示从哪个路由离开。
  • 组件内的守卫:
    • beforeRouteEnter:在进入组件时执行。回调函数中有三个参数,tofrom参数的含义与全局守卫中的一致,next回调函数略有不同。如果直接以beforeRouteEnter进行访问,会发现alert输出hello undefined,这是因为在执行完之前,data数据还未渲染。所以,next会给一个对应的回调,帮助完成。
    • beforeRouteLeave:在离开组件时执行。如果确认离开,执行next();如果取消,执行next(false),留在当前页面。
  • 路由独享的守卫:
    • beforeEnter:用法与全局守卫一致。

执行顺序如下:

  1. 全局守卫的router.beforeEach
  2. 路由独享的守卫的beforeEnter
  3. 组件内的守卫的beforeRouteEnter
  4. 全局守卫的router.afterEach
  5. 组件内的守卫的beforeRouteLeave
  6. 路由独享的守卫的beforeEnter
相关文章
|
17天前
|
JavaScript API 开发者
Vue是如何进行组件化的
Vue是如何进行组件化的
|
17天前
|
JavaScript 前端开发 开发者
Vue是如何进行组件化的
Vue是如何进行组件化的
|
17天前
|
存储 JavaScript 前端开发
介绍一下Vue的核心功能
介绍一下Vue的核心功能
|
JavaScript Go
|
JavaScript C语言 Go
|
19天前
|
JavaScript 前端开发 开发者
vue 数据驱动视图
总之,Vue 数据驱动视图是一种先进的理念和技术,它为前端开发带来了巨大的便利和优势。通过理解和应用这一特性,开发者能够构建出更加动态、高效、用户体验良好的前端应用。在不断发展的前端领域中,数据驱动视图将继续发挥重要作用,推动着应用界面的不断创新和进化。
|
21天前
|
JavaScript 前端开发 开发者
vue学习第一章
欢迎来到我的博客!我是瑞雨溪,一名热爱前端的大一学生,专注于JavaScript与Vue,正向全栈进发。博客分享Vue学习心得、命令式与声明式编程对比、列表展示及计数器案例等。关注我,持续更新中!🎉🎉🎉
24 1
vue学习第一章
|
21天前
|
JavaScript 前端开发 索引
vue学习第三章
欢迎来到瑞雨溪的博客,一名热爱JavaScript与Vue的大一学生。本文介绍了Vue中的v-bind指令,包括基本使用、动态绑定class及style等,希望能为你的前端学习之路提供帮助。持续关注,更多精彩内容即将呈现!🎉🎉🎉
22 1
vue学习第三章
|
21天前
|
缓存 JavaScript 前端开发
vue学习第四章
欢迎来到我的博客!我是瑞雨溪,一名热爱JavaScript与Vue的大一学生。本文介绍了Vue中计算属性的基本与复杂使用、setter/getter、与methods的对比及与侦听器的总结。如果你觉得有用,请关注我,将持续更新更多优质内容!🎉🎉🎉
35 1
vue学习第四章
|
21天前
|
JavaScript 前端开发 算法
vue学习第7章(循环)
欢迎来到瑞雨溪的博客,一名热爱JavaScript和Vue的大一学生。本文介绍了Vue中的v-for指令,包括遍历数组和对象、使用key以及数组的响应式方法等内容,并附有综合练习实例。关注我,将持续更新更多优质文章!🎉🎉🎉
21 1
vue学习第7章(循环)