aralejs / events

Events Utility
aralejs.org/events/
34 stars 41 forks source link

关于事件重复绑定及解绑 #18

Open hotoo opened 10 years ago

hotoo commented 10 years ago
var evt = new Events();

var name = "event-name";
function handler(){}

evt.on(name, handler); // 绑定第一次
evt.on(name, handler); // 绑定第二次

evt.emit(name); // handler 执行两次

evt.off(name, handler); // 解绑一次
evt.emit(name); // handler 不执行。

这个逻辑是否不正常?解绑时,在找到第一个 handler 后是否应该 break ?

afc163 commented 10 years ago

我怎么觉得合理。。

hotoo commented 10 years ago

如果这是合理的,那更合理的就是不应该支持重复绑定。