Angular
Cycle de Vie

ngOnChanges()

La méthode ngOnChanges() est le système de surveillance d'Angular. Elle est déclenchée automatiquement chaque fois qu'une donnée envoyée par le parent (via un @Input()) est modifiée.

À quoi ça sert ?

Imaginez que le Parent change d'avis et envoie une nouvelle donnée à l'Enfant. Grâce à ngOnChanges(), l'Enfant est immédiatement prévenu de ce changement et peut réagir en conséquence.

La magie de SimpleChanges

Cette méthode reçoit un objet très spécial appelé SimpleChanges. Il contient non seulement la nouvelle valeur, mais aussi l'ancienne valeur (avant modification) !


Démonstration Interactive

Composant Parent (Émetteur)
Composant Enfant (Récepteur)
Bonjour
C'est le tout premier message, il n'y a pas d'historique.

Le Code Source

import { Component } from '@angular/core';

@Component({
  selector: 'app-parent',
  template: `
    <h3>Composant Parent</h3>
    <!-- On lie l'input à la variable 'message' avec ngModel -->
    <input [(ngModel)]="message" class="form-control" />
    
    <!-- On envoie la variable à l'enfant -->
    <app-child [message]="message"></app-child>
  `
})
export class ParentComponent {
  message: string = 'Bonjour';
}