React : des composants réutilisables ⚛️
React c'est comme des Lego : tu construis des petits blocs (composants) que tu peux réutiliser partout pour faire une grande application !
1. La philosophie React ⚛️
pseudo
' Un composant React = une fonction qui retourne du HTML
' On peut lui passer des "props" (propriétés) comme des paramètres
FONCTION Bonjour(props)
' props.nom contient la valeur passée
RETOURNER <h1>Bonjour, {props.nom} !</h1>
FIN FONCTION
' Utilisation :
<Bonjour nom="Alice" /> ⬅ Affiche "Bonjour, Alice !"
<Bonjour nom="Bob" /> ⬅ Affiche "Bonjour, Bob !"
``'
function Bonjour({ nom }: { nom: string }) {
return <h1>Bonjour, {nom} !</h1>;
}
// Utilisation
<Bonjour nom="Alice" />
<Bonjour nom="Bob" />
2. État (State) et événements 🔄
L'état (state) c'est la mémoire du composant. Quand l'état change, le composant se re-affiche automatiquement.
Exécution pas à pas
pseudo▶️' useState : crée une variable "réactive"
' useState : crée une variable "réactive"Le programme exécute cette action, puis passe à la suivante. Le programme exécute cette instruction, puis passe à la suivante.
3. Le cycle de vie d'un composant 🔄
pseudo
' Le cycle de vie React :
- Le composant se MONTE (apparaît à l'écran)
- L'utilisateur interagit → l'ÉTAT change
- React RE-REND le composant (nouvelle version)
- React compare l'ancien et le nouveau
- Seules les DIFFÉRENCES sont appliquées au vrai DOM
- Si le composant disparaît → il se DÉMONTE
``'
4. Effets de bord (useEffect) 🌊
Parfois, on veut faire quelque chose après que le composant s'affiche : charger des données, écouter un clic, etc.
Exécution pas à pas
pseudo▶️' useEffect : exécute du code APRÈS l'affichage
' useEffect : exécute du code APRÈS l'affichageLe programme exécute cette action, puis passe à la suivante. Le programme exécute cette instruction, puis passe à la suivante.
5. Composants avec formulaire 📝
Exécution pas à pas
pseudo🧩FONCTION FormulaireContact()
FONCTION FormulaireContact()Le programme exécute cette action, puis passe à la suivante. On définit une fonction appelée "FormulaireContact()". Cette fonction contient des instructions qui seront exécutées quand on l'appelle.
Exercices pour toi 🎯
- Compteur amélioré : ajoute un bouton "-1" et un bouton "×2" au compteur
- Composant Liste : crée un composant
ListeTaches avec une entrée pour ajouter des tâches
- Profil utilisateur : utilise
useEffect pour charger des données depuis une API
- Mini-app : construis un petit convertisseur °C ↔ °F avec un formulaire
Exécution pas à pas
État de la mémoire
3 variablesVariable
Valeur
Type
Addr.
VirtualDOM
arbre d'objets
vnode
0x3100
props
{ name: 'Alan' }
object
0x3120
Aucune variable active
VirtualDOM0x3100
arbre d'objets
vnode
props0x3120
{ name: 'Alan' }
object
⚡ Simulateur — Fondamentaux de React
Étape 1/7📝 Pseudo-code
1import { useState } from 'react';
2
3function Compteur() {
4 const [count, setCount] = useState(0) # ⬅ state initial
5 return (
6 <div>
7 <p>Compteur : {count}</p>
8 <button onClick={() => setCount(count + 1)}>
9 +1
10 </button>
11 </div>
12 );
13}
14
15// Montage du composant
16<Compteur /> # ⬅ monter
17
18// Clic sur +1 → setCount(1)
19// React re-rend le composant # ⬅ re-rendu
⚛️ Visualisation React
📦 Dépendances
import { useState } from 'react';
💡 Cycle React
State change→Nouveau VDOM→Diff→Patch DOM
💡On importe useState depuis React. C'est le hook qui gère l'état.