关于beforeRouterEnter获取不到this

在实际项目中,我们可能需要针对进入到组件去前,做一些逻辑,比如判断页面来源,当使用beforeRouterEnter路由守卫时,由于实例并未完全生成,导致守卫内使用this获取不到,

解决办法,在next的回调函数中使用传参形式

beforeRouterEnter (to, from, next) {
    if (from.name === 'login') {
        next(vm => vm.login())      
    } else {
        next()
    }
}

  

原文地址:https://www.cnblogs.com/zhangrenjie/p/14060425.html