如果我设置“;listenToOnce”;为同一事件触发多次
What happends if I set "listenToOnce" triggers multiple times for the same event
使用Backbone时,如果我在视图中多次设置同一个侦听器(使用listenToOnce
),它是为同一事件创建多个一次性侦听器,还是只覆盖一个?
eventThatMightHappenMultipleTimes: function () {
this.listenToOnce(this, 'someEvent', this.someEventHandler);
},
...
foo: function () {
this.trigger('someEvent');
}
我想确保我不会留下任何无用的听众。
是的,它多次创建同一个侦听器。你可以很容易地测试它:
var SomeView = Backbone.View.extend({
initialize: function() {
this.listenToOnce(this, 'someEvent ', this.logEvent);
this.listenToOnce(this, 'someEvent ', this.logEvent);
this.listenToOnce(this, 'someEvent ', this.logEvent);
this.listenToOnce(this, 'someEvent ', this.logEvent);
},
logEvent: function() {
console.log("'someEvent' has been fired!");
}
});
var view = new SomeView();
view.trigger('someEvent');
这是一个关于JS Bin的工作演示。
是的,它将为同一事件调用多个一次性侦听器。http://bit.ly/1EljaXf
相关文章:
- 在onmouseover事件中更改图像,并为每个事件设置中断/间隔
- 创建元素并将事件设置为类时 JQuery 重复事件
- jQuery image.Load 事件不触发,如果 image.src 从 PageShow 事件设置并返回到同一页面
- 如何对链式事件设置条件
- 使用鼠标悬停/悬停事件设置隐藏元素的值
- 如何根据索引中控件的onchange事件设置mvc 5视图中隐藏字段的值
- 如何将事件设置为最顶级的父React样式
- 在jquery UI中为多个事件设置一个回调
- 对Textbox KeyDown事件设置jQuery自动完成
- 将单击事件设置为此事件添加的元素
- JQuery:基于点击事件设置属性
- 使用循环将事件设置为DOM对象
- 通过onclick事件设置变量
- 用CanJS为文档上触发的事件设置一个全局监听器/控制器
- 根据周视图中的第一个和最后一个事件设置minTime和maxTime
- 套接字.在客户端为该事件设置侦听器之前,服务器发出事件
- 为控制器中的存储事件设置侦听器
- 如何在html中使用onchange事件设置下拉值中的链接
- Javascript在构造函数中将dom事件设置为prototype方法
- 编写jQuery函数的好方法是为特定事件设置全局变量