Sortie de Angular 8.0, qui introduit le chargement différentiel

Par:
fredericmazue

ven, 31/05/2019 - 18:16

Google vient d'annoncer la sortie d'Angular 8.0, une version majeure très riche, dont l'apport principal est le chargement différentiel.

Le chargement différentiel est un mécanisme par lequel le navigateur choisit un JavaScript moderne ou legacy en fonction de ses propres capacités. Angular 8.0 en tire profit en construisant une version moderne (es2015) et une version legacy (es5) de votre application. Lorsque les utilisateurs chargent votre application, ils obtiennent automatiquement le paquet dont ils ont besoin.

De cette façon, indique Google, sur angular.io, nous avons économisé plus de 40 Ko de taille initiale pour les navigateurs modernes. Selon la communauté, les applications économisent généralement entre 7 et 20% de la taille de leur lot, en fonction du nombre de fonctionnalités JavaScript modernes dont elles tirent parti.

Une autre nouveauté remarquable est que les configurations de route utilisent désoRmais les importations dynamiques. Google recommande fortement de charger paresseusement des parties de votre application à l'aide du routeur. Ceci est accompli en utilisant la clé loadChildren dans la configuration de votre route. Avant Angular 8.0 cela ressemblait à ceci :

{path: '/admin', loadChildren: './admin/admin.module#AdminModule'}

Angular 8.0 utilise désormais les import dynamiques. le code ressemble maintenant à ceci :

{path: `/admin`, loadChildren: () => import(`./admin/admin.module`).then(m => m.AdminModule)}

A remarquer encore, l'introduction des CLI Builders. Il s'agit de nouvelles API Builder qui vous permettent d'exploiter ng build, ng test et ng run et ainsi d'exécuter des processus tels que la construction et le déploiement. Ces API sont présentées en détails ici.

Angular est un logiciel libre sous licence MIT, disponible sur GitHub.