Explorez l'optimisation de la vitesse de chargement et le LCP de vos applications Angular grâce à la directive NgOptimizedImage. Découvrez comment booster vos performances et offrir une expérience utilisateur de qualité supérieure avec Angular. Apprenez dès aujourd'hui et améliorez votre site!
Quelques définitions :
Pour optimiser les performances des applications angular, plusieurs mécanismes ont été mis en place au fur et à mesure de l’évolution des versions.
Parmi ces mécanismes nous présenterons l’un qui spécialement permet d’optimiser la gestion des images et par conséquent le « Largest Contenful Paint (LCP) ».
Il s’agit de la directive NgOptimizedImage.
Il s’agit d’une directive standalone qui permet d’optimiser le LCP en priorisant l’optimisation du chargement des images sur votre site au travers de:
En plus de l’optimisation de l’élément LCP de type image, cette directive favorise un certain nombre de bonnes pratiques de chargement des images telles que :
ou directement dans votre composant puisqu’il s’agit d’une directive standalone de la manière suivante :
Si vous souhaitez importer un composant standalone dans un autre composant, alors ce dernier doit être standalone. C’est la raison pour laquelle on commence à définir la propriété standalone du composant host à true.
Attention !!! un composant standalone ne doit figurer dans aucun NgModule. Si vous souhaitez réutiliser un composant standalone, alors il faut l'importer plutôt dans le tableau imports de votre module :
Il vous permet de spécifier la fonction utilisée pour charger les images. Très pratique si vous utilisez un CDN pour le chargement de vos images.
exemple de loader pour charger des images depuis le dossier assets
Utilisation de ngSrc au lieu de src
Rien que le nom suffit pour charger l’image une fois le loader correctement défini
Ceci permet de définir quelles images doivent être chargées en priorité ainsi que la taille et la largeur de l’image.
Une erreur est générée si les dimensions ne sont pas définies
et un avertissement si le ratio de l’image n’est pas respecté.
Définir les dimensions permet à la directive de charger l’image avec la taille requise au lieu de la charger avec la taille réelle, ce qui dans certains cas peut accroître énormément les performances.
Par défaut la valeur de l’attribut loading est lazy.
Dans cet article nous avons exploré l’utilisation de la directive NgOptimizedImage pour optimiser le chargement de nos pages web Angular. Et améliorer le LCP.
L’optimisation de la vitesse de chargement perçue reste un véritable enjeu dans la mesure où 57% des internautes abandonnent un site qui prend plus de 3s pour se charger et 97% d’entre eux n’y reviendront plus.
A très bientôt pour un autre article sur les performances Angular.
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique. Duis cursus, mi quis viverra ornare, eros dolor interdum nulla, ut commodo diam libero vitae erat. Aenean faucibus nibh et justo cursus id rutrum lorem imperdiet. Nunc ut sem vitae risus tristique posuere.