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 

Logo

前往低代码交流专区

更多推荐