vue.use()详解

原文链接:https://blog.csdn.net/sunyctf/article/details/127706967

官网解释:

  

前言:

  相信很多人在用 Vue 使用别人的组件时,会在在main.js中用到 Vue.use(xx) 。例如:Vue.use(VueRouter)、Vue.use(MintUI)、Vue.use(ElementUI)。但是用 axios时,就不需要用 Vue.use(axios),就能直接使用。那这是为什么呐?答案就是:因为 axios 没有 install。什么意思呢?

Vue.use() 中的参数必须是一个function函数或者是一个Object对象,如果是对象的话,必须在对象中提供一个install方法。之后会将 Vue 作为参数传入。我们分两点来看:

1. 如果Vue.use() 中的参数是一个function函数,那么函数的参数是Vue对象。

2. 如果Vue.use() 中的参数是一个Object对象,那么这个对象必须提供一个install方法,install方法的参数就是Vue。

  在源码中首先限制了它传入的值的类型只能是Function或者Object,然后判断了该插件是不是已经注册过,防止重复注册,然后调用了该插件的install方法,源码中也有介绍到Vue.use()可以接受多个参数的,除第一个参数之后的参数我们都是以参数的形式传入到当前组件中。

 

posted @ 2023-08-14 17:48  Alice&Black  阅读(65)  评论(0编辑  收藏  举报