如何动态加载Vue.js异步组件

时间:2016-11-16 15:31:15

标签: javascript vue.js vue-component

我正在尝试允许根据UI选择加载不同的组件。在这种情况下,单个API的两个版本。我希望我可以根据这个选择改变使用的WebPack包的路径,但我不确定它是否会起作用。
我正在做类似的事情:

export default {
    props: ['version'],
    computed: {
        path () {
            return this.version + 'component/path';
        }
    },
    components: {
        'dynamic': Vue.component('dynamic' (resolve) => {
            require([this.componentPath], resolve);
        }),
    }
}

这会尝试加载捆绑包并且有效。但是,因为this由于某种原因而导出的对象this.default.componentPath()不是函数,当然this.componentPath(如附带的示例所示)未定义。
我的意图是能够加载位于1.0/Category/Method2.0/Category/Method等路径的单个文件组件。

  1. version更改时,是否会更改此组件路径?它与v-model绑定到选择输入。
  2. 正确的方式是做什么的?

0 个答案:

没有答案