在Vuejs项目上工作,假设我创建了10个基本组件,现在我必须将这些组件用于另一个容器组件 . 现在我的问题是如何在根级别全局注入这些基本组件,以便我不需要注入每个单独的容器组件?
在Vuejs中全局注入自定义组件的最佳方法是什么
如何在整个应用程序中全局使用第三方插件?
为什么不创建一个包含所需组件导入的文件?假设它们分组在 homepage 之下,或者你只有一个保存导入的 homepage.js 文件:
homepage
homepage.js
import Component from '@/components/homeButton.vue'; // Etc. export default { Component // Etc. }
只要您需要这组组件,就可以导入此文件 . 并使用像这样的扩展运算符在组件中使用它:
import homepage from 'somedir/homepage'; components: { ...homepage },
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 为例
axios
在 Vue 对象的原型上设置axios,如下所示:
Vue
Vue.prototype.$axios = axios;
现在你可以使用 this.$axios 在任何组件中使用axios
this.$axios
创建钩子中的示例:
created(){ this.$axios.get('url').then((res) => { //response }); }
2 回答
为什么不创建一个包含所需组件导入的文件?假设它们分组在
homepage
之下,或者你只有一个保存导入的homepage.js
文件:只要您需要这组组件,就可以导入此文件 . 并使用像这样的扩展运算符在组件中使用它:
Vue.component('component-tag-name',{// options});
如果您正在使用构建过程并分离.vue文件
现在,您可以在任何其他组件内使用该组件,而无需在本地注册它
回答第二个问题
我们以
axios
为例在
Vue
对象的原型上设置axios,如下所示:现在你可以使用
this.$axios
在任何组件中使用axios创建钩子中的示例: