【发布时间】:2012-04-11 13:54:04
【问题描述】:
(具体来说,我使用的是主干模型事件)
有人可以帮我理解 javascript 事件的工作原理吗?以下内容没有按我预期的方式工作,这让我感到困惑:
在主干中,我对模型进行了更改,然后立即运行了一些代码:
var myVar;
myModel.set('someAttr', true); // Change my model
myVar = executeSomeFunc(); // Now run some code
然后在我的代码库的其他地方监听事件并处理它(在我的例子中,我用一个集合包装这个模型):
myCollection.on('change:someAttr', changeHandler); // Listen for the event
我发现myVar = executeSomeFunc() 直到change:someAttr 事件上的所有事件处理程序都完成触发后才会执行。 (我已经通过在事件上附加一个耗时的事件处理程序来检查)
这是预期的行为吗?
【问题讨论】:
标签: javascript events synchronization backbone.js