Exercice - Hydratation¶
Identifier et corriger des erreurs d'hydratation :
- Créer un Client Component
app/horloge/page.tsxqui affiche l'heure actuelle :- Version incorrecte : utiliser
new Date().toLocaleTimeString()directement dans le rendu et observer l'erreur d'hydratation dans la console - Version correcte : utiliser
useStateetuseEffectpour mettre à jour l'heure uniquement côté client
- Version incorrecte : utiliser
- Créer un Client Component
app/theme/page.tsxqui lit le thème depuislocalStorage:- Version incorrecte : accéder à
localStoragedirectement dans le composant et observer l'erreur - Version correcte : accéder à
localStorageuniquement dans unuseEffect
- Version incorrecte : accéder à
- Créer un Client Component
app/banniere/page.tsxqui affiche « Mobile » ou « Bureau » selon la largeur de la fenêtre :- Corriger l'erreur causée par
typeof window !== "undefined" && window.innerWidth < 768utilisé directement dans le rendu - Utiliser
useStateinitialisé àfalseet mettre à jour dansuseEffect
- Corriger l'erreur causée par