新建文件夹extends
extends->event
export default function(Vue){
console.log('Vue',Vue)
Vue.prototype.$eventDispatch = function(name,value){
let parent = this.$parent;
while(parent){
parent.$emit(name,value);
parent = parent.$parent
}
}
}
//父传子
Vue.prototype.$eventBroadcast = function(name,value){
const bc =(children)=>{
children.map((c)=>{
c.$emit(name,value);
if(c.$children){
bc(c.$children)
}
})
}
bc(this.$children)
}
extends->index
import eventExtend from './event';
export{
eventExtend
}
main.js
import {eventExtend} from './extends'
eventExtend(Vue)
son.vue
methods:{
getMoney(){
this.$eventDispatch('getMoney',10)
}
}