是什么:在我们开发中有时候需要大量复用某个组件时,我们需要在组件都引入 一遍,非常麻烦,这时候我们可以全局注入这些组件。
技术:(基于 webpack + proxy)
怎么用:
1. 新建 @/components/index.js
// const requireComponent = require.context(文件路径,是否深层次查找Bool,正则.vue结尾)
export default {
install(Vue) {
// 拿到公用组件数组
const requireComponent = require.context('./', true, /\.vue$/)
requireComponent.keys().forEach((item) => {
// 获取组件对象requireComponent(item).default
const moduleObj = requireComponent(item).default
// 注意所有的组件都要命名
Vue.component(moduleObj.name, moduleObj)
})
}
}
2. main.js 中 引入
// 将公共组件放到全局
import plugin from "@/components";
Vue.use(plugin);
3. 使用公共组件要记得添加 给组件命名