Novedades angular 12



angular 12

La nueva versión de angular ya está aquí. Estos son los cambios

En este link, contamos las novedades de Angular 11.

Ahora, hemos llegado a la versión de angular 12 con muchos cambios desde su primera versión. A continuación vamos a ver las novedades que nos trae en esta versión.


"Ivy Everywhere" Ivy en todas partes


Angular se está moviendo por completo a Ivy y está desaconsejado view Engine. Por este motivo View Engine queda obsoleto.


De momento las bibliotecas actuales que usan View Engine seguirán funcionando con las aplicaciones de Ivy. Sin embargo, desde ya se aconseja a los desarrolladores de apis y bibliotecas que vayan migrando a Ivy.



ID de mensajes de i18n


Angular cuenta con varios formatos de identificación de mensajes heredados que se utilizan en el sistema i18n. Estos identificadores pueden crear problemas como por ejemplo con los espacios en balndo. El equipo de Angular quiere resolver esto con un nuevo formato que reducirá los errores de la traducción y el coste de la retraducción.


Desde la versión anterior los nuevo proyectos se configuran automáticamente para los nuevos mensajes y en esta nueva versión se incorporan herramientas para migrar los proyectos y traducciones existentes



Futuro de Protactor.


Sin una elección definitiva, el equipo de angular ha optado por no incluir Protractor en esta versión. Para cubrir este servicio han optado por ofrecer soluciones dentro del CLI de angular como son Cypress, WebdriverIO y TestCafe.



Operador null-coalescing (??)


Este operador null-coalescing ya existía en versiones anteriores de TypeScript desde hace un tiempo.


Ahora, en las plantillas se va a poder utilizar esta nueva sintaxis con lo que se consigue simplificar los condicionales complejos. Vamos a verlo con un ejemplo:


  {{age! == null && age! == undefined? edad: calculateAge ()}};



    // se convierte en:
    


    {{ edad ?? calculateAge ()}};
    

Como se ve es bastante sencillo de utilizar y obtendremos unos templates más limpios



Cambios en la documentación.


En esta versión también se actualiza la documentación que Angular pone a disposición en su portal. Este cambio está especialmente indicado para aquellos que empiezan a adentrarse en el framework.



Mejora de los estilos.


En esta versión, los componentes de Angular ahora admitirán Sass en línea en el stylescampo dentro del decordador @Component. Anteriormente, Sass sólo estaba disponible en recursos externos debido al compilador Angular. Para activar esta función en sus aplicaciones existentes hay que modificar el archivo angular.json y añadir la línea "inlineStyleLanguage": "scss”.



Desactivación del soporte para IE11.


A partir de esta versión se empieza a mostrar un mensaje en el que se informa de la desaprobación para internet explorer 11 y en la versión 13 se dejará de dar soporte a dicho explorador. De esta forma el equipo de angular pretende optimizar el desarrollo y ofrecer soluciones modernas.



Otros cambios:


  • La ejecución ng build tiene como valor predeterminado production.

  • El modo estricto está habilitado de forma predeterminada en la CLI.

  • El servicio de idiomas basado en Ivy está pasando de la suscripción a la activación de forma predeterminada.

  • Esta versión soporta webpack 5.

Angular se está acercando y escuchando cada vez más a la comunidad y toma nota de sus opiniones y circunstancia para definir el futuro y evolución de su buque insignia.