Member-only story
Control Flow en Angular
Seamos brutalmente honestos por un segundo. ¿Cuántas veces has escrito *ngIf="algo" en tu vida? ¿Miles? ¿Millones? Y ahí vas, poniendo asteriscos por todos lados como si estuvieras censurando palabrotas en un chat familiar. Luego viene el *ngFor con su sintaxis medio rara de let item of items; trackBy: trackByFn. Y ni hablar de cuando querías hacer un *ngIf y un *ngFor en el mismo elemento y tenías que crear un <ng-container> porque Angular te decía "no puedes poner dos directivas estructurales juntas, colega".
Bueno, amigo mío, Angular 17 llegó y dijo “¿saben qué? Esto está medio anticuado, hagámoslo mejor”. Y así nacieron los bloques de control de flujo: @if, @for, @switch y compañía. Y no es solo azúcar sintáctica para verse cool, es más rápido, más limpio, más fácil de leer, y honestamente, hace que tu código se vea profesional en lugar de parecer que estás hablando en código morse con asteriscos.
¿Qué pasó con los asteriscos?
Primero, la sintaxis no era exactamente intuitiva, especialmente para gente nueva. ¿Por qué un asterisco? ¿Por qué no puedo usar dos en el mismo elemento? ¿Qué es ese ng-template del que todos hablan pero nadie entiende realmente? Segundo, el rendimiento podía ser mejor. Angular tenía que hacer gimnasia mental para transformar esas directivas en templates y vistas bajo el capó.










