Deps.autorun, nu er Tracker.autorun en reaktiv beregningsblok. Hvorimod observeChanges giver et tilbagekald til, når noget ændrer sig.
Når du bruger Deps.autorun, vil hele blokken i function() {...}
, kører igen, hver gang en reaktiv variabel eller et dokument ændres, på nogen måde overhovedet (der opdateres, fjernes eller indsættes), eller enhver anden reaktiv variabelændring.
ObserveChanges-tilbagekaldene er mere finjusterede og aktiverer tilbagekaldene for tilføjet, ændret eller fjernet afhængigt af forespørgslen.
Baseret på din kode ovenfor er begge i virkeligheden ens. Hvis du havde flere reaktive variabler i Deps.autorun-blokken, så observeChanges
måde at gøre det på ville være mere effektiv.
Generelt er den første stil mere effektiv, men som din kode står ovenfor, er de begge næsten ens, og det afhænger af dine præferencer.