Entonces, si hago esto en mi componente HTML:
<fa-icon [icon]="faSort" (click)="sort($event)"></fa-icon>
¿Cómo obtendré su nombre en mi componente ts?
sort(event: Event) {???}
Intenté hacerlo así:
sort(event: Event) { console.log(event['target']['ownerSVGElement']['classList'][1]) }
Pero el método anterior es muy inconsistente. ¿Hay una mejor manera de hacer esto?
Enlace del paquete Font Awesome: https://www.npmjs.com/package/@fortawesome/angular-fontawesome
Suponiendo que realmente no le importe nada más que el valor del evento pueda contener.
sort(event : any) { console.log("Icon Name: ", event.iconName); } <fa-icon [icon]="faSort" (click)="sort({ iconName: 'faSort'})"></fa-icon>
Suponiendo que aún desea capturar el evento real en sí:
<fa-icon [icon]="faSort" (click)="sort({event: $event, iconName: 'faIcon'})"></fa-icon>
La razón por la que esto funciona es que permitimos que nuestro tipo acepte un tipo de cualquiera, y estamos creando un objeto completamente nuevo usando las llaves.