What every front-end developer should know about change detection in Angular