Para comunicar componentes, Angular hace uso de decoradores para intercambiar información entre un componente padre hacia un componente hijo y viceversa.
Comunicando componentes
Para enviar información de padre a hijo, puedes utilizar el decorador @Input() para marcar una propiedad de una clase como punto de entrada de un dato.
<p style='text-align:center;'>
<img src=""https://static.platzi.com/media/articlases/Images/Screenshot%20from%202022-04-05%2022-42-58.png"" alt=""Envio de datos componente padre a hijo"">
</p>
Debes importar Input desde @angular/core para poder utilizar esta directiva e indicar que la propiedad firstname es un dato que el componente padre enviará.
Podrás inicializar el componente desde su padre y pasarle los inputs que este necesite de la siguiente manera:
El decorador @Input() detectará cualquier cambio en el dato y automáticamente actualizará su valor. Si ocurre algún evento en el componente padre que cambie el valor en el Input firstname, el componente hijo recibirá inmediatamente ese nuevo valor.
Input Set
Otra manera de utilizar la directiva @Input es de la siguiente manera:
Observa que en esta oportunidad, cada vez que se envía un valor al @Input, se ejecutará la función saludar() que recibe como parámetro el valor que se le haya enviado.
De esta manera, puedes ejecutar la lógica que necesites dentro de esta función cada vez que el valor del @Inputcambia.
Contribución creada con los aportes de Kevin Fiorentino.