Qu’est-ce que l’hydratation
Comprenez comment l’hydratation réutilise le HTML du serveur
Qu’est-ce que l’hydratation est une leçon Angular Academy gratuite sur CoddyKit. Ceci est la leçon 1 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Angular Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Angular Academy comprend 4 leçons au total.
Définir l’hydratation
L’hydratation est le processus par lequel l’application Angular côté client réutilise le HTML rendu par le serveur, en ajoutant les écouteurs d’événements et l’état au DOM existant au lieu de le supprimer et de le rendre à nouveau.
La vie sans hydratation
Le SSR ancien utilisait une hydratation destructive : le client supprimait le DOM du serveur et effectuait un nouveau rendu depuis zéro. Cela provoquait un scintillement visible et annulait le travail du serveur.
Hydratation non destructive
Angular moderne effectue une hydratation non destructive : il parcourt le DOM existant, le fait correspondre à l’arbre des composants et réutilise les nœuds. Il n’y a pas de scintillement, le travail est réduit et les performances sont meilleures.
Pourquoi cela améliore les indicateurs
La réutilisation du HTML du serveur permet de conserver affiché le contenu principal, ce qui aide le LCP, et évite les décalages de mise en page dus à un nouveau rendu, ce qui aide le CLS. L’application devient interactive sans être redessinée.
Le fonctionnement en deux phases
Première phase : le serveur génère le HTML et l’envoie. Deuxième phase : le navigateur télécharge le JS, démarre Angular et hydrate le balisage existant afin de le rendre interactif.
Faire correspondre la structure du DOM
L’hydratation suppose que l’arbre des composants côté client produit la même structure que celle générée par le serveur. En cas de divergence, Angular signale une incompatibilité d’hydratation.
// NG0500: During hydration Angular expected <div> but found <span>Causes courantes des incompatibilités
La manipulation directe du DOM, les branches réservées au navigateur qui modifient le balisage, l’imbrication HTML invalide et le contenu non déterministe (comme Math.random() ou Date.now() dans les modèles) provoquent des incompatibilités.
Éviter les modifications manuelles du DOM
Ne manipulez pas le DOM de manière impérative (par exemple avec innerHTML en dehors d’Angular) pendant le SSR. Laissez Angular gérer le DOM afin que le client et le serveur restent cohérents.
Solution de contournement ngSkipHydration
Pour un composant qui ne peut réellement pas être hydraté, par exemple un composant tiers qui modifie le DOM, désactivez l’hydratation avec ngSkipHydration ; Angular effectuera à nouveau le rendu de ce seul sous-arbre.
<app-legacy-widget ngSkipHydration></app-legacy-widget>L’hydratation nécessite SSR
L’hydratation ne s’applique que lorsqu’il existe du HTML rendu côté serveur à réutiliser. Une application purement en CSR n’a rien à hydrater ; l’hydratation constitue la partie cliente de SSR.
La suite
L’hydratation peut être complète (toute l’application est hydratée au chargement) ou incrémentale (certaines parties sont hydratées à la demande). Le choix de la bonne stratégie est essentiel pour les performances et sera abordé dans les prochaines leçons.
Vérification rapide
Vérifiez votre compréhension de l’hydratation.
Récapitulatif
L’hydratation réutilise le HTML du serveur côté client sans le remplacer de manière destructive, ce qui améliore LCP et CLS. Les incohérences proviennent de modifications manuelles du DOM ou d’un balisage non déterministe ; utilisez ngSkipHydration comme solution de contournement. L’hydratation constitue la partie cliente de SSR.
Questions Fréquemment Posées
La leçon « Qu’est-ce que l’hydratation » est-elle gratuite ?
Oui — le texte complet de « Qu’est-ce que l’hydratation » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Angular Academy, passe à CoddyKit PRO. Le cours Angular Academy comprend 4 leçons au total.
Qu'est-ce que j'apprendrai dans « Qu’est-ce que l’hydratation » ?
Comprenez comment l’hydratation réutilise le HTML du serveur Tu pratiques Angular Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.
Dois-je avoir de l'expérience pour commencer Angular Academy ?
Aucune expérience préalable n'est requise. Angular Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 1 sur 4.
Combien de temps prend la leçon « Qu’est-ce que l’hydratation » ?
La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.
Peux-tu écrire et exécuter du code dans cette leçon Angular Academy ?
Oui. Chaque leçon Angular Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.
Toutes les leçons de ce cours
- Qu’est-ce que l’hydratation
- Activer l’hydratation complète
- Hydratation incrémentielle avec @defer
- Mesurer les indicateurs essentiels du Web