这种行为实际上不仅从性能的角度来看是完全有意义的。这样考虑:
当您使用时 observe
方法,您想通知所有发生的变化 收藏 (无论是在服务器上还是在Minimongo上)。因此,您收到的每个回调都是一个修改的实例 收藏。 当您通过将它们之一移至另一个地方来更改对象的顺序时,您会更改集合 一次, 因此,您只想收到此事件的一个回调。
您不想被单一事件通知42次!
我认为,对所有移动对象的通知乘以最简单的方法是在回调中手动循环。当项目从位置A移动到位置B时,您会知道A和B之间的所有对象也已移动。因此,如果您需要调整它们每个,只需在整个列表上从A到B的循环进行此操作即可。