1、 对象类型:一个对象,但是必须包含一个 install 的函数,该函数会在安装插件时执行;
对象类型写法:根目录建一个 plugins_object.js
export default {
install(app){
app.config.globalProperties.$name = "peijj"
}
}
2、函数类型:一个function,这个函数会在安装插件时自动执行;
函数类型写法:根目录建一个 plugins_function.js
export default function(app){
console.log("函数插件",app)
}
注册插件
import {
createApp
} from 'vue';
import App from './App.vue';
import pluginsObject from '../plugins/plugins_object.js';
import pluginsFunction from '../plugins/plugins_function.js';
const app = createApp(App);
app.use(pluginsObject);
app.use(pluginsFunction);
app.mount('#app');
全局使用插件
<template>
<h2>
{{name}}
</h2>
</template>
<script>
import {
getCurrentInstance
} from 'vue';
export default {
setup() {
/* setup中拿到全局$name */
let instance = getCurrentInstance()
let name=instance.appContext.config.globalProperties.$name
console.log("===>", name)
return{
name
}
},
mounted() {
/* 钩子函数中拿到全局$name */
console.log("mounted==>",this.$name)
}
}
</script>
<style>
</style>