vue的router导航守卫使用

一、什么是导航

  导航就是路由正在发生变化

二、导航守卫、路由守卫、路由的钩子函数

  路由发生变化时自动触发的一些函数

三、守卫有哪些

  全局守卫(通过new Router出来的实例进行使用,在router/index.js中进行使用)

  全局前置守卫:beforeEach()

beforeEach((to, from,next)=> {
    //to 代表着将要去的路由的信息对象
  // 从from要去to 当前导航正要离开的路由,来自哪个路由 })

  全局后置守卫: afterEach()

afterEach((to, from,next)=> {
    //to 代表着将要去的路由的信息对象
  // 从from要去to 当前导航正要离开的路由,来自哪个路由
})

四、路由独享(这个没有亲自实践,抄的...)

new VueRouter({
    routes: [
        {
            path: "/hello",
            component: hello,
            beforEnter: (to, from, next) => {
            
            }
        }
    ]
})

五、我用的比较多的:组件中使用导航守卫(功能比如我在改变路由的时候需要进行一些操作)


1.beforeRouteLeave


2.beforeRouteUpdate

3.beforeRouteEnter

{
    data(){
        return {
            name: "张三"
        }
    },
    beforeRouteLeave(to, from, next){
     // 参数跟以上说的参数一样,组件内配置的。触发在beforeEnter之后
    },
    beforeRouteUpdate(to, from, next){
     //在动态路由的时候,参数发生变化时,触发
},
    beforeRouteEnter(to, from, next){
     //当离开时第一个触发,在beforeEach之前
}
}

 

posted @ 2021-06-03 22:57  _曾经沧海难为水  阅读(145)  评论(0编辑  收藏  举报