VueJS addRoutes添加更多子路由

时间:2019-05-13 14:59:46

标签: vue.js vue-router

实施语言切换器,并让这最后一个(希望如此)缺失的难题。

我定义了以下路线:

routes: [
    {
      path: '/',
      redirect: `/en`,
    },
    {
      path: '/:lang',
      component: {
        render: h => h('router-view')
      },
      children: [
        {
          path: '',
          name: 'home',
          component: Home,
        },
      ],
    },
  ],

我有一些来自后端的路由,我将这些路由添加到现有路由中,如下所示:

fetchRoutes({commit}) {
      axios.get( `${process.env.VUE_APP_API_DOMAIN}/wp-json/api/v1/routes/`).then( r => r.data ).then(routes => {

        routes.forEach( (route) => {
          router.addRoutes([
            {
              path: `${route.path}`,
              name: `${route.path}`,
              component: () => import(/* webpackChunkName: 'pages' */ `./views/${route.component}.vue`),
              props: route.props,
            },
          ]);
        } );

      });
    },

这对于非儿童路线来说很好。但是我需要将这些路线作为孩子放在path: '/:lang',下。

0 个答案:

没有答案