Blog

Angular 21: signals + control flow para un UI más rápido

Refactorizamos el UI a un modelo más reactivo y data-driven: menos trabajo en templates, menos renders innecesarios y mejor mantenibilidad.

5 min de lectura

Cuando el proyecto crece, el “performance” casi siempre se pierde por mil cortes pequeños: templates demasiado inteligentes, estado duplicado, pipes innecesarios, y efectos colaterales difíciles de rastrear.

El cambio más importante fue mover la complejidad fuera del HTML y hacia un estado explícito con signals: guardamos lo mínimo posible y derivamos el resto con computed() .

En los templates, priorizamos control flow moderno ( @for , @if ) y track estable. Esto evita work extra del renderer y reduce “reflows” cuando el contenido cambia.

Otro punto crítico fue el navbar con scroll-spy: usar IntersectionObserver es correcto, pero hay que elegir el “section” dominante (por ratio) y no reaccionar a un único entry aislado.

El resultado es una navegación más consistente: el estado activo se actualiza sin parpadeos y sin depender de hacks en DOM.

Mi regla: menos magia en el template, más estado derivado y determinístico. Eso hace que el UI sea más rápido, pero sobre todo más predecible.