vue路由守卫的执行顺序

简介: vue路由守卫的执行顺序

全局路由导航守卫:beforEach afterEach

路由独享导航守卫:beforEnter

组件内导航: beforRouteEnter beforeRouteUpdate beforeRouteLeave

beforEach 与 beforEnter 的区别:前置针对所有路由,后者针对当前路由

切换界面时,从 test界面 到 about界面。

【组件】前一个组件的beforeRouteLeave

【全局】beforeEach

【组件】(路由参数发生变化)触发beforRouterUpdate

【配置文件,即router.js文件中写在路由配置的地方】beforEnter

【组件】组件内部声明的beforeRouteEnter

【全局】afterEach

  {
    path: '/list',
    name: 'list',
    component: () => import('@views/List'),
    children: [
      {
        path: ':id',
        name: 'details',
        component: () => import('@views/Details'),
        props: true,
        beforeEnter: (to, from, next) => {
          console.log('路由独享守卫 beforeEnter')
          next()
        }
      }
    ]
  }
beforeRouteEnter(to,form,next){
      console.log(this)//访问不到this
      next(vm=>{
          console.log(vm)//vm为vue实例,此时vm为this
      })
}
beforeRouteUpdate(to,form,next){
     next()
}
beforeRouteLeave(to,form,next){
     next()
}

next()详解


  • next()

没有参数,表示可以进入到to的路由中;

  • next(false)

参数为一个布尔值false,中断当前的导航,回到from路由;

  • next(’/’) 或 next({ path: ‘/’ })

参数为一个路径,相当于执行了this.$router.push(’/’)

  • next(error)

参数为error,中断当前导航,将该错误传递给router.onError()注册过的回调。


目录
相关文章
|
2天前
|
JavaScript 前端开发
Vue,如何引入样式文件
Vue,如何引入样式文件
|
2天前
|
JavaScript
|
1天前
|
JavaScript 开发工具 git
大事件项目40---Vue代码里如何引入相对路径图片
大事件项目40---Vue代码里如何引入相对路径图片
|
2天前
|
JavaScript 前端开发 程序员
探索Vue.js宝库:解锁基础知识与实用技能之门(1. 数据绑定与响应式 2. 条件与循环 3. 组件化开发;1. 路由管理与导航 2. 状态管理与Vuex 3. Vue.js的生命周期)
探索Vue.js宝库:解锁基础知识与实用技能之门(1. 数据绑定与响应式 2. 条件与循环 3. 组件化开发;1. 路由管理与导航 2. 状态管理与Vuex 3. Vue.js的生命周期)
9 1
|
2天前
|
JavaScript
vue滚动到页面底部时加载
vue滚动到页面底部时加载
5 1
|
2天前
|
JavaScript
Vue搭配ELEMENT组件,路由不能正确跳转bug
Vue搭配ELEMENT组件,路由不能正确跳转bug
Vue搭配ELEMENT组件,路由不能正确跳转bug
|
2天前
|
JavaScript 前端开发
一个好看的vue admin模板
这是一个关于Vue管理模板的引用,提到了[PanJiaChen](https://github.com/PanJiaChen/vue-admin-template)在GitHub上的`vue-admin-template`项目。该项目是一个前端管理模板,链接指向了详细的资源。页面中还包含了一张图片,但markdown格式中无法直接显示。简而言之,这是关于一个基于Vue的后台管理界面模板的参考信息。
|
2天前
|
资源调度 JavaScript API
Vue-treeselect:为Vue应用程序提供强大选择器的指南
Vue-treeselect:为Vue应用程序提供强大选择器的指南
6 0
|
2天前
|
JavaScript 前端开发
Vue.js中使用JavaScript实现路由跳转详解
Vue.js中使用JavaScript实现路由跳转详解
2 0
|
2天前
|
JavaScript
vue知识点
vue知识点
5 0