- 创建插件文件:例如 myPlugin.js
- 编写插件:插件应该导出一个对象,这个对象可以包含一个 install 方法。Vue 会调用这个 install 方法来安装插件。在这个方法中,你可以添加全局资源。
export default {install(app, options) {app.component('MyComponent', {template: '<div>这是一个全局组件</div>'});app.directive('my-directive', {mounted(el, binding, vnode, prevVnode) {el.style.color = binding.value;}});app.mixin({created() {console.log('全局混入的 created 钩子被调用');}});app.config.globalProperties.$myProperty = '这是一个全局属性';console.log(options.myOption);app.provide('i18n', options)}
};
- 使用插件:在你的 Vue 应用中,通常在 main.js 或 main.ts 文件中,你需要导入这个插件并使用 app.use() 来安装它。
import { createApp } from 'vue';
import App from './App.vue';
import myPlugin from './myPlugin';const app = createApp(App);
app.use(myPlugin, {myOption: '这是插件的配置项'
});app.mount('#app');
- 使用插件提供的功能:一旦插件被安装,你就可以在你的组件中使用它提供的功能了。
<template><div><MyComponent /><span v-my-directive="color">这个是个文本</span></div>
</template><script>
export default {data() {return {color: 'red'};},created() {console.log(this.$myProperty); }
};
</script>