In case:
中间件:

父组件中的.vue
methods:{
listensub:()=>{//注意这个会多次成倍的触发
connector.$on("phone",(msg)=>{
console.log("msg===",msg);
})
},
offlistensub:()=>{
connector.$off("phone");
}
}
子组件中的.vue
methods:{
callfather:function(){
connector.$emit("phone",this.msg);
}
}
Brief summary:
在父组件中触发两次$on, 子组件中$emit只要触发一次,就会造成$on内的代码执行两次。
在父组件中触发10次$on, 子组件中$emit只要触发一次,就会造成$on内的代码执行10次。
最后解决办法see also: https://github.com/vuejs/vue/issues/3399
本文探讨了Vue.js中父组件与子组件通过中间件进行通信时出现的问题:当父组件多次使用$on监听子组件发出的事件时,子组件每次触发$emit会导致父组件中的监听函数被调用多次。文章提供了GitHub上的链接来进一步了解如何避免此类问题。
4220

被折叠的 条评论
为什么被折叠?



