本文主要是介绍10.在父子组件通信中,要注意若$on触发n次,会造成$emit触发$on的次数是n倍,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
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
这篇关于10.在父子组件通信中,要注意若$on触发n次,会造成$emit触发$on的次数是n倍的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!