Angular - 5.14-Comprendre le cycle de vie des composants
Angular pilote chaque composant à travers plusieurs étapes — création, mise à jour, destruction — et expose à chacune un hook de cycle de vie sur lequel on peut se brancher pour exécuter du code. Voici les premiers crochets utiles à connaître, dans l'ordre où ils s'exécutent.
Les premiers hooks
ngOnChanges: appelé une première fois quand le composant est créé, puis à chaque fois qu'une propriété décorée par@Input()reçoit une nouvelle valeur. Il peut donc être exécuté plusieurs fois au cours de la vie du composant.ngOnInit: exécuté une seule fois, juste après le constructeur, dès qu'Angular a fini l'initialisation de base du composant. À ce moment-là, le composant n'est pas encore visible dans le DOM, mais ses propriétés (notamment les@Input()) sont déjà accessibles et utilisables. C'est l'endroit idéal pour initialiser des données.ngDoCheck: exécuté à chaque cycle de détection de changement Angular — pas seulement quand quelque chose change vraiment. Cela inclut les clics, les saisies, les timers, et tout événement qui peut potentiellement modifier l'état. Angular l'appelle pour vous donner l'occasion d'effectuer une logique de détection personnalisée. À utiliser avec parcimonie car il s'exécute souvent.
La détection de changement est le mécanisme par lequel Angular décide qu'un fragment
de template doit être re-rendu. Si une propriété passe de 1 à 2 et qu'elle est
affichée dans le template, Angular doit rafraîchir cette portion : c'est lors de
cette vérification que ngDoCheck est déclenché. À retenir : Angular
effectue ces vérifications à chaque événement déclencheur (clic, requête HTTP qui
revient, timer), même si rien n'a réellement changé — d'où la nécessité de garder
ngDoCheck très léger.