@HostListener
@HostListener es un decorador en Angular que permite a las directivas y componentes escuchar eventos del DOM en el elemento al que están asociados.
📌 Importancia de @HostListener
@HostListenerEscuchar Eventos del DOM: Facilita la captura de eventos como clics, teclas presionadas, movimientos del mouse, etc.
Responde a Eventos Específicos: Permite ejecutar lógica específica en respuesta a eventos del usuario.
🌟 Ejemplo de Uso en una Directiva
import { Directive, ElementRef, HostListener, Input } from '@angular/core';
@Directive({
selector: '[appCheckBrokenImage]'
})
export class CheckBrokenImageDirective {
@Input() defaultImage: string;
constructor(private el: ElementRef) {}
@HostListener('error')
onError() {
const element = this.el.nativeElement;
if (this.defaultImage) {
element.src = this.defaultImage;
} else {
element.src = 'assets/default-image.png'; // Ruta a una imagen por defecto
}
}
}📑 Sintaxis de @HostListener
@HostListenereventName: El nombre del evento del DOM que deseas escuchar.args(opcional): Una lista de argumentos que deseas pasar al método manejador de eventos.
🌟 Ejemplo Detallado de @HostListener
⌨️ Escuchar Eventos de Teclas
Última actualización