vil robo de la presentación de @PascalPrecht
Cada componente tiene su propio change detection.
CD es una copia "lógica de la vista y sus datos"
Lo que hace es comparar valor actual con valor nuevo y si cambia, actualiza la vista.
Algo causa un cambio en el estado de la data de un componente.
Estos cambios son detectados por NgZones una adaptación de Zones, y se dispara el CD.
El CD va por cada componente empezando en la raiz comparando valor por valor.
Si un valor cambió, cambia su estado(valor) en la vista
El CD va por cada componente empezando en la raiz comparando valor por valor.
vil robo de la presentación de @PascalPrecht
Pero si posees problemas o quieres mejorar el performance hay otra estrategia llamada OnPush.
OnPush compara únicamente la referencia de cada valor y no va atributo por atributo chequeando si algo cambió.
Sólo si la referencia cambia, actualiza la vista.
Posible demo??
POR VALOR
POR REFEERENCIA
vil robo de el articulo de @farm_fresh_js
POR VALOR
POR REFEERENCIA
vil robo de el articulo de @farm_fresh_js
https://codeburst.io/explaining-value-vs-reference-in-javascript-647a975e12a0
https://blog.nrwl.io/essential-angular-change-detection-fe0e868dcc00#.8z7p6poyp
https://blog.thoughtram.io/angular/2016/02/22/angular-2-change-detection-explained.html
https://juristr.com/blog/2017/03/angular-tuning-change-detection/