我们的业务组件一般都定义成了局部组件,使用的时候需要在components中注册,而我们全局通用组件一般是需要定义为全局组件的,不需要局部注册
main.js
import PageTools from '@/components/PageTools'
Vue.component('page-tools', PageTools)
插件方式优化
上面的方式虽然可以非常方便的完成注册,但是大家想象一个场景,如果我们需要注册的全局组件非常多,我们需要一个一个引入,然后分别调用Vue.component方法,main.js文件会变的很大,不好维护,为了解决这个问题,我们给它优化成插件的形式
1- 插件开发 - components/index.js
import PageTools from './PageTools'
const componentPlugin = {
install(Vue){
Vue.component('page-tools',PageTools)
}
}
export default componentPlugin
2- 插件注册 - main.js
import componentPlugin from '@/components'
Vue.use(componentPlugin)