From bdd83168380af6297843b556d15630be47ae295d Mon Sep 17 00:00:00 2001 From: matthieureynier Date: Wed, 24 Jun 2026 09:24:17 +0200 Subject: [PATCH] Enonce React #2 contact (Zelda): nettoyage template + fix Docs.jsx, map/key, conditionnel, etat local, champ controle, lifting state up, useEffect, fetch en React, re-decoupage --- ENONCE_react_contact.md | 323 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 323 insertions(+) create mode 100644 ENONCE_react_contact.md diff --git a/ENONCE_react_contact.md b/ENONCE_react_contact.md new file mode 100644 index 0000000..440c499 --- /dev/null +++ b/ENONCE_react_contact.md @@ -0,0 +1,323 @@ +# đŸ—Ąïž ÉnoncĂ© React #2 — ton site Zelda (version longue) + +Bien jouĂ© MĂ©lissa : tu as dĂ©coupĂ© en composants (`Header`, `Footer`, `Carte`, `Compteur`, et mĂȘme un dĂ©but de `Docs`), tu utilises `useState`
 les bases sont lĂ . 👌 + +Deux choses avant de foncer : ton `App.jsx` contient encore **tout le contenu d'exemple de Vite** (le gros bloc « Documentation / Connect with us ») — c'est le **fourre-tout** qu'on veut Ă©viter. Et ton `Docs.jsx` est **cassĂ©** (on le rĂšgle au Module 0). On va nettoyer, puis bĂątir un **vrai site sur Zelda**, en apprenant **beaucoup de React**. + +> 🎯 Ce document est une **sĂ©rie de modules** (0 → H). Fais-les **dans l'ordre**, teste Ă  chaque fois. Je t'explique les **mĂ©caniques** avec des mini-exemples ; Ă  toi d'**appliquer sur ton thĂšme Zelda**. Compte plusieurs sĂ©ances — c'est normal. + +| Module | Tu apprends | Niveau | +|---|---|---| +| 0 | Nettoyer le template + rĂ©parer `Docs.jsx` | ⭐ | +| A | Listes : `.map()` + `key` | ⭐ | +| B | Affichage conditionnel + extraire un `` | ⭐ | +| C | État local par carte (`useState`) | ⭐ | +| D | Champ **contrĂŽlĂ©** + recherche/filtre + Ă©tat vide | ⭐⭐ | +| E | **Faire remonter l'Ă©tat** (lifting state up) + callbacks | ⭐⭐ | +| F | **`useEffect`** : titre de page + persistance `localStorage` | ⭐⭐ | +| G | **Charger les donnĂ©es avec `fetch`** (dans React) | ⭐⭐⭐ | +| H | Re-dĂ©coupage propre (``, ``) | ⭐⭐ | + +--- + +## đŸ§č Module 0 — Nettoyer + rĂ©parer `Docs.jsx` + +### 0.1 — Vider le contenu d'exemple +Dans `App.jsx`, tout le bloc `


` (Documentation, Connect with us, liens Vite/Discord
) vient du **template de démarrage**. Supprime-le : on va mettre **ton** contenu Zelda à la place. Garde juste `
`, `