MODULE R07 — EXERCICES

Exercices Context API

10 exercices pour maîtriser createContext, Provider, useContext et les hooks personnalisés de context.

EX 1

createContext

Tâche : Créez 3 contexts différents avec createContext(valeurParDéfaut) : pour le thème, l'utilisateur et la langue.

EX 2

Provider avec value

Tâche : Créez un ThemeProvider qui enveloppe ses children avec <ThemeContext.Provider value={{ theme, setTheme }}>.

EX 3

useContext

Tâche : Consommez un context avec useContext(MonContext) dans deux composants distincts sans passer de props.

EX 4

Theme context complet

Tâche : Implémentez un système de thème complet : ThemeContext, ThemeProvider, useTheme() et un composant qui bascule entre clair/sombre.

EX 5

Auth context

Tâche : Créez un AuthContext avec user, login(email) et logout(). Le AuthProvider stocke l'utilisateur dans le state.

EX 6

Hook personnalisé

Tâche : Créez un context de notifications avec un hook useNotif() qui expose notifs et ajouterNotif(message, type).

EX 7

Context de langue (i18n)

Tâche : Créez un LangueContext avec un objet t (traductions) et un bouton pour basculer entre fr/en.

EX 8

Context panier

Tâche : Créez un CartProvider avec panier, ajouter(produit), supprimer(id) et total (calculé).

EX 9

Plusieurs contexts imbriqués

Tâche : Créez 2 contexts distincts (ThemeContext + AuthContext) et imbriquez leurs Providers dans App.

EX 10

Architecture complète

Tâche finale : Un seul AppProvider qui gère thème, auth et langue. Hook useApp() avec vérification d'erreur. Plusieurs composants le consomment.

🧠 QCM R07 — 10 questions sur Context API.
Passer le QCM R07
← Cours R07 ▶ Mini-projet Suivant : Hooks avancés →