如何将组件注入vuejs中的另一个组件

时间:2017-11-01 11:59:45

标签: vue.js

使用Vuejs项目,假设我创建了10个基本组件,现在我必须将这些组件用于另一个容器组件。现在我的问题是如何在根级别全局注入这些基本组件,以便我不需要注入每个单独的容器组件?

  • 在Vuejs中全局注入自定义组件的最佳方法是什么
  • 如何在整个应用程序中全局使用第三方插件?

2 个答案:

答案 0 :(得分:0)

为什么不创建一个包含所需组件导入的文件?假设它们被归为homepage或者您只有homepage.js文件,其中包含导入:

import Component from '@/components/homeButton.vue';
// Etc.

export default {
    Component
    // Etc.
}

只要您需要这组组件,就可以导入此文件。并使用像这样的扩展运算符在组件中使用它:

import homepage from 'somedir/homepage';

components: {
    ...homepage
},

答案 1 :(得分:0)

Vue.component(' component-tag-name',{// options});

如果您正在使用构建过程并分离.vue文件

import MyComp from './path-to-your-component'

Vue.component('component-tag-name', MyComp);

现在您可以在任何其他组件内使用该组件而无需在本地注册

<component-tag-nam></component-tag-name>

回答第二个问题

axios为例

Vue对象的原型上设置axios,如下所示:

Vue.prototype.$axios = axios;

现在您可以使用this.$axios

在任何组件中使用axios

创建钩子中的示例:

created(){
    this.$axios.get('url').then((res) => {
        //response
    });
}