插件引入(main.js里引用)
import Plugin from './plugins.js'; Vue.use(Plugin);
main.js
import Vue from 'vue' import App from './App.vue' Vue.config.productionTip = false //引入插件 import Plugin from './plugins.js'; Vue.use(Plugin); new Vue({ render: h => h(App), }).$mount('#app')
student.vue
<template> <div class="student"> <!--插件中的myFliter方法--> <h2>{{name | myFliter}}</h2> <h2>{{age}}</h2> <button @click="show">点我执行hello方法</button> </div> </template> <script> export default{ name:'Student', data() { return{ name:'张三46468231', age:18 } }, methods:{ //执行插件中的hell()方法 show(){ this.hello(); } } } </script> <style> </style>
plugins.js 插件
export default{ //所有方法都写在install()里 install(Vue){ console.log('@@66',Vue); //定义全局过滤器 Vue.filter('myFliter',function(value){ return value.slice(0,3) }) // 给Vue原型添加一个方法(vm和vc就都能使用了) Vue.prototype.hello = ()=>{alert(6666)} } }