通过install函数传递vue实例 ,require.context()有三个参数,第一个参数为组件的根路径,第二个参数为是否深度监听,第三个为正则,判断组件的后缀是否为.vue
export default {
install (vue) {
const requireComponents = require.context('./', true, /\.vue$/)
requireComponents.keys().forEach((item) => {
const component = requireComponents(item).default
vue.component(component.name, component)
})
}
}
通过requireComponents(item).default拿到组件对象,全局注册,vue.component(组件名称,组件对象),注册全局组件必须含有name,否则会报错