OnChanges
OnChanges
es un hook del ciclo de vida de un componente o directiva en Angular que se invoca cuando Angular reinicializa los datos-bound input properties.
Es ideal para implementar lógicas o acciones cuando los valores de las propiedades de entrada (@Input()
) cambian.
Cómo Implementarlo
Importar OnChanges: Primero, necesitas importar OnChanges
junto con SimpleChanges
desde @angular/core
.
Implementar OnChanges: Tu componente o directiva debe implementar la interfaz OnChanges
.
Entendiendo SimpleChanges
¿Qué es
SimpleChanges
? Es un objeto que tiene un registro de cambios para cada@Input()
propiedad. Para cada propiedad, puedes obtener el valor actual y el valor anterior.Estructura de SimpleChanges: Cada clave en el objeto
SimpleChanges
corresponde al nombre de una propiedad@Input()
, y el valor asociado es un objeto con las siguientes propiedades:currentValue
: el valor actual de la propiedad.previousValue
: el valor anterior de la propiedad antes del cambio.firstChange
: un booleano que indica si este es el primer cambio del valor de la propiedad desde que se instanció el componente.
Ejemplo Práctico
Precaución con firstChange
: Al iniciar el componente, ngOnChanges
se dispara una vez por cada @Input()
propiedad, incluso antes de ngOnInit
. Usa firstChange
para distinguir entre la inicialización y cambios subsiguientes.
Última actualización