路由钩子函数beforeRouteEnter中有没有this ?

答案:

进入当前路由之前的钩子函数 beforeRouteEnter(to,from,next){}中:没有this!没有this!没有this!

因为当钩子执行前,组件实例还没被创建

那么:

该如何处理这个问题呢?(如果此时需要访问this,并执行一些逻辑操作呢?)

我们可以通过next回调,通过vm访问组件实例:

beforeRouteEnter(to, from, next) {
        next(vm => {
             console.log('vm', vm)
        })
}

ps:其他的钩子函数,比如beforeRouteLeave() 和 beforeRouteUpdate()中都是可以正常访问this的

原文地址:https://www.cnblogs.com/fxwoniu/p/14871456.html