vue-router在单文件组件中的生命周期

vue-router在单文件组件中的生命周期

介绍:

vue-router共有三个生命周期:beforeRouteEnter,beforeRouteUpdata,beforeRouteLeave。分别对应进入路由前,路由更新,离开当前路由。

钩子函数的参数

to:到哪里去。
from:从哪里来。
next:当这个函数执行时,表示继续执行下一步操作。不写会导致路由被拦截。

beforeRouteEnter

beforeRouteEnter (to, from, next) {
    // 访问导航时候,执行这个路由执行的第一的函数   
    // 这个时候组件还没有初始化,无法访问this
    console.log(this) // undefined
    next(function(vm){  // next中函数的参数,参数vm就是vue实例
        // vm就是当前组件实例
        console.log(vm.msg);  //'hello'
    })
},

beforeRouteUpdata

beforeRouteUpdata (to, from, next) {
    // 这个是路由嵌套情况下,点击子导航触发
    console.log('beforeRouteUpdata');
    next(); // 不写这个钩子函数不会继续执行
    console.log(this) // 可以访问组件实例
},

beforeRouteLeave

beforeRouteLeave (to, from, next) {
    // 离开当前组件时候触发
}

加油 ······逆战班!!!


版权声明:本文为cc_chuan原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。