Backbone:在集合'更改'上仅触发一次事件

Dan*_*an0 5 backbone.js backbone-events backbone.js-collections

简单的问题:什么是"只有一次"发起事件的最佳方式?

我有一个骨干系列,有多个模型.有时,一次更新多个模型的属性,在集合上触发多个"更改"事件.

只触发一次"更改"事件的最佳方法是什么,将所有属性更改分组在一起?

我最好的想法是使用计时器,但这只会捕获第一个模型属性更改.

所有建议,想法和解决方案都受到重视.谢谢 :).


上下文:在这种情况下,事件会触发计算密集型函数,因此必须避免多次运行.

Sus*_* -- 4

每当您批量更新模型上的属性时,请{silent:true}作为选项传递,这will suppress any events from being fired.

然后触发一个自定义事件,一个或多个视图侦听该事件。

  • 这只是一种解决方法,而不是正确的解决方案。更好的解决方案是使用“reset”,而不是“add”。将调用单个“重置”事件。 (3认同)