Vue beforeRouteEnter 的next执行时机

时间:2022-04-21 04:29:47

背景

今天在用vue实现界面的时候,想在beforeRouteEnter钩子函数中去获取数据,然后通过next方法设置到跳转页面的实例中,结果发现数据一直没办法在界面渲染的时候赋值,苦思不得其解,遂google之,终寻原因,记录之。

注意

beforeRouteEnter (to, from, next) {
    console.log(this);  //undefined,不能用this来获取vue实例
    console.log('组件路由钩子:beforeRouteEnter');
    next(vm => {
      console.log(vm);  //vm为vue的实例
      console.log('组件路由钩子beforeRouteEnter的next');
    });
  }

next(vm=>{console.log(‘next’) })
这个里面的代码很晚执行,执行时机在组件mounted周期之后