Este comportamiento en realidad tiene mucho sentido no solo desde el punto de vista de rendimiento. Piénselo de esa manera:
Cuando usas observe
método, desea que se le notifique todos los cambios que le suceden a la recopilación (ya sea en el servidor o en Minimongo). Entonces, cada una de las devoluciones de llamada que recibe es una única instancia de modificación del recopilación. Cuando cambia el orden de los objetos moviendo uno de ellos a otro lugar, cambia la colección una vez, Por lo tanto, desea recibir solo una devolución de llamada para este evento.
¡No querrás ser notificado 42 veces sobre un solo evento!
Creo que la forma más fácil de multiplicar esa notificación para todos los objetos movidos es recaudarlos manualmente dentro de la devolución de llamada. Cuando un elemento se mueve de la posición A a la posición B, usted sabe que todos los objetos que estaban entre A y B también se han desplazado. Entonces, si necesita ajustar cada uno de ellos, simplemente haga esto en el bucle que va de A a B en toda la lista.