批量组件注册-(三行代码搞定)

126 阅读1分钟

平时我们注册组件,不管是在父组件注册和main.js注册,一两个组件倒是很轻松,如果需要大量注册组件,就会重复做很多一样的工作,这里我们就能用到批量注册组件,大大提高工作效率

1.在公共components目录下,创建index.js,index.js中批量注册

// 批量组件注册
export default {
  install(Vue) {
    // 深度找当前目录下所有的组件
    var requireComponent = require.context('./', true, /\.vue$/)
    // 遍历循环 所有组件
    requireComponent.keys().forEach(item => {
    // 变量接收
      var moduleDefault = requireComponent(item).default
      // 注册组件(所有组件name不能为空)
      Vue.component(moduleDefault.name, moduleDefault)
    })
  }
}

这里方法跟Vue.use()原理一样的,只是把固定的组件,换成了可变的

2.main.js导入使用

import Plugin from '@/components'
Vue.use(Plugin)

3.在其他需要使用的组件中,当标签直接使用