vue中bus.$on事件被多次绑定

Posted shirliey

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了vue中bus.$on事件被多次绑定相关的知识,希望对你有一定的参考价值。

问题描述:只要页面没有强制刷新,存在组件切换,bus.$on方法会被多次绑定,造成事件多次触发

解决办法一:在每次调用方法前先解绑事件( bus.$off ),然后在重新绑定( bus.$on )

bus.$off(‘pagechangep‘); //先解绑,不然会多次出发
bus.$on(‘pagechangep‘,function(i)
      that.publishpageTo(i);
);

解决办法二:注册的总线事件(Bus)要在组件销毁时(beforeDestroy/destroyed)卸载,否则会多次挂载,造成触发一次但多个响应的情况

beforeDestroy () 
  bus.$off("backUpLevel");

以上是关于vue中bus.$on事件被多次绑定的主要内容,如果未能解决你的问题,请参考以下文章

vue中bus.$on事件被多次绑定

vue中bus.$on事件被多次绑定

解决vue使用bus被多次触发问题

Vue事件总线(eventBus)$on()会多次触发解决办法

jquery使用on()方法绑定的事件被执行多次的问题

小5聊jQuery使用on绑定未来元素同时off仍然出现被绑定多次click点击事件分析和原因,自己挖坑系列