在实际的开发中,我们进行组件和插件的注册时候,发现那些插件和组件有些会推荐我们使用Vue.use()
方法进行注册,有些又会推荐我们使用Vue.component()
,今天就这两个注册方法来简单的谈一谈个人的理解。
一、使用 Vue.component()注册
首先我们使用 Vue.component()注册的大部分是一些我们需要进行全局运用的自定义,所以我们会到 main.js 里面进行注册。
Vue.component()
里面接收两个参数:
第一个参数是自定义元素名称,也就是将来在别的组件中使用这个组件的标签名称。
第二个参数是将要注册的 Vue 组件。
1. 单个自定义组件的注册
例如我现在要注册一个全局组件,首先我需要到在components
全局组件的文件夹中定义好这个组件。
有这个 vue 的实例在,我们可以在在install
方法内部可以添加全局方法或者属性、全局指令、添加实例方法、使用Vue.component()
注册组件等。
这也是为什么有些组件或者插件可以直接Vue.use()
注册,因为他们在内部有一个 install 方法进行了注册。而为了避免重复注册的结果,会提示我们注册方法。
总结
Vue.use()
注册与Vue.component()
注册区别就在于一个insatll
方法,说到这,大家就知道怎么进行大量的自定组件的全局注册了。
我们可以先创建一个 js 文件,将所有需要进行全局注册的组件导入后,直接在内部默认导出一个带有install(Vue)
方法的对象,直接使用Vue.component()
进行注册,再将 js 文件在 main.js 中进行注册就好了。
虽然Vue.use()
注册与Vue.component()
注册区别就在于一个insatll
方法,但是两者之间的内部联系,这次就先不讲了,等下次有时间再出一篇两者之间的构造器指向问题。