vue项目中动态加载路由组件this.$route undefined

在项目中偶然间遇到了这样的问题,routes注册设置的时候使用了懒加载的方式,如下:

routes: [
    {
      path: '/',
      name: 'index',
      // component: index  //方式1
      component: () => import('./views/index.vue'); //方式2
    },
    ...
]

如果是这种方式(方式2),那么在app.vue中你如果先要在 created 或者 mounted 中,通过 this.$route.query.xx的方式去获取xx参数的值,那就是拿不到的,如果改为方式1,那就可以取得到了。
猜想的原因应该是:项目启动,懒加载方式,路由加载注册的时候没有加载path:'/'下的$route

你可能感兴趣的:(vue项目中动态加载路由组件this.$route undefined)