vue install用法,Vue.use()
本文主要介绍了Vue.use()的用法和install的用法分析,具有很好的参考价值。希望对大家有帮助。如有错误或不足之处,请不吝赐教。
目录
Vue.use()并安装用法介绍为什么要这样做?Vue.use为什么用安装问题?从来源分析,Vue官网是这么说的。
Vue.use()和install用法
介绍
在vue的main.js中,我们经常使用Vue.use(xx)方法。比如我们引入elementUI。在main.js中,我们一般通过下面的代码来介绍:
从“element-ui”导入ElementUI
导入 element-ui/lib/theme-chalk/index . CSS
Vue.use(ElementUI)
为什么这样做?
官方解释
安装Vue.js插件。如果插件是一个对象,则必须提供安装方法。如果插件是一个函数,它将被用作安装方法。
当调用install方法时,Vue作为参数传入。你什么意思?Vue.use()中的参数必须是函数function或对象。如果是对象,则必须在对象中提供安装方法。之后,Vue将作为参数传入。
总结:
如果Vue.use()中的参数是函数function,那么函数的参数就是Vue对象。
如果Vue.use()中的参数是Object对象,那么这个对象必须提供一个install方法,install方法的参数是Vue。
Vue.use为什么要使用install
疑问
Vue.use注册插件和Vue.prototype.xxx挂载方式有什么区别?使用Vue.use有什么好处?为什么用Vue.use而不用Vue.prototype.xxx?
从源码分析
//Vue源文件路径:src/core/shared/util.js
将函数导出到数组(list: any,start?编号):数组{
start=start 0
let i=list.length - start
const ret: Arrayany=新数组(I)
while (i - ) {
列表[我开始]
}
返回ret
}
//Vue源文件路径:src/core/global-api/use.js
从导入{ toArray }./util/index
导出函数initUse (Vue: GlobalAPI) {
Vue.use=function(插件:函数对象){
const installedPlugins=(this。_installedPlugins (this。_installedPlugins=[]))
If(installed plugins . index of(plugin)-1){//如果插件已经注册过,就不会再注册了。
归还这个
}
//附加参数
const args=toArray(arguments,1)
args.unshift(this)
if(type of plugin . install=== function ){
plugin.install.apply(插件,参数)
} else if(插件类型===函数){
plugin.apply(null,args)
}
installedPlugins.push(插件)
归还这个
}
}
vue官网是这样说的
安装方法应该是解决防止插件多重注册的问题。如果用Vue.prototype.xxx挂载,每次使用都要重新挂载。
个人请指正,说明一下install的优点。
以上个人经历,希望能给大家一个参考,也希望大家多多支持我们。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。