MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

Meteor `Deps.autorun` vs `Collection.observe`

Deps.autorun, ora Tracker.autorun è un blocco di calcolo reattivo. Considerando che osservaChanges fornisce una richiamata quando qualcosa cambia.

Quando usi Deps.autorun, l'intero blocco in function() {...} , verrà eseguito nuovamente ogni volta che una variabile reattiva o un documento cambia, in qualsiasi modo (aggiornato, rimosso o inserito) o qualsiasi altra modifica di variabile reattiva.

I callback di osservaChanges sono più perfezionati e attivano i callback per essere aggiunti, modificati o rimossi a seconda della query.

In base al codice sopra, in effetti entrambi sono gli stessi. Se avevi più variabili reattive nel blocco Deps.autorun, allora observeChanges modo di farlo sarebbe più efficiente.

In generale il primo stile è più efficiente, ma dato che il tuo codice sta sopra, sono entrambi quasi uguali e dipende dalle tue preferenze.