事件侦听器回调不会通过正常的函数调用触发
Event listener callback does not fire via a normal function call
我相信对此有合理的解释,但我无法理解——如果能提供一些指导,我将不胜感激。
我使用Backbone有以下代码:
var ExampleCollection = Backbone.Collection.extend({
exampleEvent: function() {console.log('event fired')}
});
var ExampleView = Backbone.View.extend({
el:'body',
onExampleEvent: function() {console.log('listener heard it')},
initialize: function() {
this.listenTo(this.collection,'exampleEvent',this.onExampleEvent);
}
});
var testCollection = new ExampleCollection;
var testView = new ExampleView({collection:testCollection});
在控制台中,当我输入命令testCollection.trigger('exampleEvent')
时,onExampleEvent
回调函数将启动。然而,当我输入命令testCollection.exampleEvent()
时,exampleEvent
函数会激发,但onExampleEvent
回调函数不会。
如果有人能向我解释为什么会发生这种情况,我会很感激,因为我已经找了一段时间了,但一直想不通。
非常感谢。
想想吧——当你调用时
testCollection.exampleEvent()
你只要执行它,然后。。。没有什么当
testCollection.trigger('exampleEvent')
被调用时,它执行函数和每个侦听器。
相关文章:
- 为什么(如何)'这'从函数内部调用回调时发生更改
- 在初始函数完成之前调用回调函数
- 加载文件,然后调用回调函数
- 调用函数和回调函数有什么区别
- 如何使用另一个 JavaScript 文件中定义的类名调用回调函数
- ReactJs:this.setState的情况下不调用回调函数
- 为从AJAX调用中utlizes DATA参数的函数定义回调
- 如何在另一个函数的回调中调用JavaScript函数
- setTimeout()在其设置时间之前连续调用回调函数
- Ajax 调用重新加载页面,而不是调用回调函数
- 未调用回调函数
- 如何在循环中编写对立即调用的函数的回调
- Node.js:如何从函数的回调再次调用函数
- 如何在 javascript 中调用回调函数
- 是否保证传递给 always 函数的回调将在函数(数据)回调完成其工作后调用
- 节点.js在回调中调用回调函数
- 调用 js 函数和回调函数的 OnClick 事件
- JavaScript String.replace:如何知道上次调用回调函数
- 在 $.each 中调用函数的回调
- 如何从条件异步函数调用回调