+2500
Empresas han confiado en nosotros
51,5k
Personas que hemos formado
13
años de liderazgo

La actualización de Angular 8 añade una gran cantidad de funcionalidades para navegadores modernos y mejora de rutas.

Angular Router

Se añade un modo de retrocompatibilidad para simplificar la actualización del path de proyectos grandes, permitiendo usar $route para los lazy loadings de AngularJS.

Carga Diferencial de JavaScript

Generar un proyecto con el CLI producirá paquetes de Javascript antiguo (ES2015) y moderno (ES2015+), esto ayudará a los navegadores modernos a cargar más deprisa las páginas al tener ya el compilador para ES2015+.

Rutas

Se ha agregado una opción de navegación basada en hash a setUpLocationSync. Con este cambio, los desarrolladores ahora pueden pasar una opción a setUpLocationSync para garantizar que los cambios de ubicación se ejecuten en aplicaciones basadas en hash.

CLI

Se ha agregado soporte para tokenizar un subconjunto de una cadena de entrada y tokenizar cadenas de escape. CLI ya no soporta símbolos externos por defecto.

CSS

Con el respaldo de SASS para Bazel, las reglas se agregan al área de trabajo para un proyecto que requiere la extensión SASS a CSS. Con SASS, los desarrolladores pueden escribir estilos visuales para un sitio web en un lenguaje más avanzado que se compila en CSS.

Se ha implementado una corrección de errores en la que se ha aumentado el límite de memoria de nodos para ng-module para evitar problemas de memoria insuficiente con módulos grandes. Cuando la memoria no se libera correctamente o un proceso continúa usando más y más, puede producirse un fallo en el proceso.

Ivy

Con la versión 8 vas a poder elegir entre el motor Ivy o el View Engine clásico para generar los proyectos, aunque Ivy no será viable para todo los usos, ya que su lanzamiento definitivo será en versiones posteriores.

Las ventajas de Ivy en este versión son:

  • Hacer que el código angular sea más fácil de depurar, incluso a medida que las aplicaciones crecen.
  • Mejora de la comprobación de tipos de plantillas.
  • Mejora de la retrocompatibilidad. Para comprobar estos añadidos podemos realizar un proyecto de Angular 8, para descargarlo, como aún está en RC, que es el último estado del desarrollo antes del final utilizamos el comando:

Y para iniciar el proyecto debemos añadir enable-ivy al final del comando para iniciar el proyecto, ya que esto era una característica opcional:
ng new ivy-app --enable-ivy

Una vez creado el proyecto podemos ir al archivo tsconfig.app.json y veremos que dentro de angularCompilerOptions, la clave enableIvy está asociada a true, es decir que está activada, también podemos cambiarla por false si queremos volver a nuestro View Engine clásico en cualquier momento.
JSON "angularCompilerOptions": { "enableIvy": true }

A continuación,  iniciamos el proyecto de prueba con el siguiente comando dentro del directorio:
ng serve

Ahora podemos observar que el código fuente del navegador que los hay algunos imports que tienen el atributo nomodule, esto significa que los navegadores que no soportan ES2015+ cargan ese import, mientras que los demás no lo necesitan al interpretar ES2015+ de manera nativa.

Esto se puede configurar en el archivo browserlist, cuya configuración por defecto es la siguiente:
last 2 versions Firefox ESR Chrome 41 Support for Googlebot< not dead not IE 9-11 For IE 9-11 support, remove 'not'. ```

Esto quiere decir que acepta las últimas dos versiones de cada navegador, además Chrome 41, Firefox ESR exceptuando Internet Explorer 9 y 11.

Contáctanos
Contáctanos

Solicita la información que necesites

Facilítanos tus datos y uno de nuestros asesores se pondrá en contacto contigo, para informarte sobre el curso que mejor se adapta a tus necesidades. Todas nuestras formaciones se pueden bonificar hasta el 100%, a través de FUNDAE, sujeto a realizar la formación a través de la empresa y a tener crédito disponible. Tenemos diferentes modalidades de formación; Online o Aula Virtual Personalizada, a medida