作用
它是Vue提供一个静态方法,用来向Vue注册插件(增强vue的功能)。文档: https://cn.vuejs.org/v2/api/#Vue-use
说明:
- Vue.use 可以接收一个对象,Vue.use(obj)
- 对象obj中需要提供一个 install 函数
- 在 Vue.use(obj) 时,会自动调用该 install 函数,并传入 Vue构造器
1. 常规全局注册
main.js
import PageTools from './components/PageTools'
const MyPlugin = {
install(a) {
console.log('install.....', a === Vue) // install..... true
a.component('PageTools', PageTools)
}
}
Vue.use(MyPlugin)
2. 优化全局注册
main.js
@/components/index.js
不仅可以挂载组件 还可以挂载插件 还可以挂载全局函数 全局变量 这两个是挂载到Vue的prototype上,调用使用this.xxx 行内可以省略this
实际上挂载全局函数和变量都可以在main.js中, 但是那样main.js就显得太凌乱了, 所以最好我们自定义一个文件, main.js中导入和Vue.use注册这个对象, 更简洁