Exercices Composition API
Maîtrise ref(), reactive(), computed(), watch() et watchEffect() — les outils fondamentaux de la Composition API Vue 3.
ref() basique — Créer et modifier une ref
Tâche : Dans setup(), crée 3 refs (compteur, message, estActif). Écris une fonction incrementer() qui modifie compteur.value. Retourne tout avec return { ... }.
reactive() — Créer un objet réactif
Tâche : Crée un objet utilisateur avec reactive() (prenom, nom, age, competences[]). Écris une méthode anniversaire() qui incrémente l'âge sans .value.
computed() simple — Propriété calculée
Tâche : À partir d'un prixHT = ref(100) et d'un taux = ref(0.20), crée deux computed : tva et prixTTC. Elles doivent se mettre à jour quand les refs changent.
computed avec getter/setter — Liaison bidirectionnelle dérivée
Tâche : Crée prenom = ref('Alice') et nom = ref('Dupont'). Définis une computed nomComplet avec un get() qui concatène et un set(val) qui les découpe.
watch() — Surveiller une valeur
Tâche : Crée un compteur avec ref(). Utilise watch(compteur, callback) pour loger chaque changement avec l'ancienne et la nouvelle valeur dans un tableau historique.
watchEffect() — Tracking automatique
Tâche : Crée une ref recherche et un statut. Utilise watchEffect() (sans déclarer de dépendances) pour mettre à jour le statut selon la longueur de la recherche. Démontre que watchEffect s'exécute immédiatement.
toRefs() — Déstructurer reactive sans perdre la réactivité
Tâche : Crée un objet reactive() avec 4 propriétés. Utilise toRefs() pour le déstructurer et retourner les propriétés individuellement. Démontre que modifier via la ref met à jour l'objet original.
ref() vs reactive() — Choisir le bon outil
Tâche : Crée une app qui utilise les deux : ref() pour les primitives (titre string, compteur number, estPret boolean) et reactive() pour un formulaire objet avec plusieurs champs.
computed() liste filtrée — Recherche réactive
Tâche : Crée un tableau d'articles avec ref(). Ajoute une ref recherche. Définis une computed articlesFiltres qui filtre par titre selon la recherche. Tout doit réagir en temps réel.
Composition API complète — ref + reactive + computed + watch
Tâche : Crée une to-do list complète avec : ref() pour le titre, reactive() pour le formulaire d'ajout, computed() pour les tâches filtrées et le taux de complétion, watch() pour logger les changements.