插件引入(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)}
}
}