vue-route如何创建programmaticaly路由?

时间:2018-01-19 23:24:04

标签: vue.js vuejs2 vue-router

我有一个包含多个页面组件的文件夹,例如:

 - pages
     + page-A
        + page-a.vue
     + page-B
        + page-b.vue

据我了解,如果我们想将page-a.vuepage-b.vue渲染为自己的网页,我们必须使用vue-router,其描述如下:

import Vue from 'vue';
import Router from 'vue-router';
import PageA from '@/pages/page-A/page-a';
import PageB from '@/pages/page-B/page-b';
// ... more import for each page here ....

Vue.use(Router);

export default new Router({

routes: [
    {
      path: '/page-a',
      name: 'PageA',
      component: PageA,
    },
    {
      path: '/page-b',
      name: 'PageB',
      component: PageB,
    },
    // ....
  ],
});

我必须为每个页面编写import,并将其添加到路径中,我认为这是一项繁琐的工作。

是否可以将其重写为一条路线,例如:/:page哪些内容可以解释为变量page。至少我在Express / Node服务器上做的是:

app.get('/:parent/:folder/:filename', function (req, res) {
    var parent      = req.params.parent;
    var folder      = req.params.folder;
    var filename    = req.params.filename;
    res.render(parent + '/' + folder + "/" + filename);
});

1 个答案:

答案 0 :(得分:0)

Vue接受并处理可包含参数的路线。

您的问题是异步组件加载 check here for more

可以检查这个github问题:https://github.com/vuejs/vue-router/issues/215