Entregado el 8 de noviembre, el marco de desarrollo de aplicaciones web TypeScript de Google se encuentra en la versión 17 (accesible en GitHub). Junto con este lanzamiento, Google lanzó una sintaxis de plantilla de bloque que proporciona una funcionalidad "potente" con interfaces de usuario simples y declarativas. Esta sintaxis de bloque se ha utilizado para optimizar e integrar el flujo de control y proporciona una mejor verificación de tipos mediante una reducción de tipos más óptima. Disponible en versión preliminar para desarrolladores en Angular 17, el flujo de control también ofrece una sintaxis más ergonómica y cercana a JavaScript, por lo tanto más intuitiva y que requiere menos investigación en la documentación. También mejora significativamente el rendimiento y está disponible automáticamente en plantillas sin importaciones adicionales.

Angular 17 también ofrece un conjunto de nuevos enlaces de ciclo de vida, afterRender, para registrar una devolución de llamada que se invocará cada vez que una aplicación complete el procesamiento, y afterNextRender, para registrar una devolución de llamada que se invocará la próxima vez que la aplicación complete el procesamiento. la aplicación completa la renderización. La idea es mejorar el rendimiento de SSR (renderizado del lado del servidor) y SSG (generación de sitios estáticos) de Angular posiblemente alejándose de la emulación DOM y las manipulaciones directas de DOM. Google afirma que Control Flow mejora significativamente el rendimiento, ofreciendo tiempos de ejecución hasta un 90 % más rápidos con bucles de flujo de control integrados, compilaciones hasta un 87 % más rápidas para el renderizado híbrido y compilaciones hasta un 67 % más rápidas para el renderizado del lado del cliente. Angular 17 viene después de Angular 16, lanzado en mayo, que se centró en la capacidad de respuesta y el rendimiento.

Hidratación y Señales en fase previa

Otras características de Angular 17 incluyen:

- Hidratación (hidratación): habilitado por defecto, este proceso, que restaura la aplicación renderizada en el lado del servidor en el cliente, hasta ahora solo estaba disponible en versión preliminar para desarrolladores. La hidratación mejora el rendimiento al evitar el trabajo adicional de recrear nodos DOM.

- Señales: proporciona monitoreo granular del estado de una aplicación. También liberada de su estado de vista previa para desarrolladores, la función le brinda al marco la capacidad de optimizar las actualizaciones de renderizado. Se agregarán más funciones para Signals para mejorar la experiencia del desarrollador en la versión Angular 18.

- La capacidad de vistas diferenciables, también en la vista previa del desarrollador, le permite realizar una carga diferida (Lazy Loading) de componentes de plantilla y dependencias transitivas con una sola línea de código declarativo.

- Se ha revisado la experiencia de renderizado híbrido. SSR y SSG están más cerca de los desarrolladores gracias a un mensaje nuevo.

- El Generador de aplicaciones introducido en Angular 16, con ESBuild y una experiencia de compilación basada en Vite, está habilitado de forma predeterminada para nuevas aplicaciones. Algunos usuarios informan una mejora del 67% en el tiempo de construcción.

- La API View Transitions, que permite transiciones fluidas al modificar el DOM, ahora es compatible directamente con el enrutador Angular a través de la función ViewTransitions.

- La directiva de imagen Angular ahora genera automáticamente enlaces de inicio de sesión previos para dominios proporcionados como argumento para el cargador de imágenes.

El equipo de desarrollo de Angular también está lanzando una vista previa beta de angular.dev, con planes de convertirlo en el sitio web predeterminado de Angular con Angular 18. Este nuevo sitio albergará la documentación de Angular y brindará orientación para brindar ayuda sobre las últimas funciones del marco.