Défi : Impliquer Redux dans React
Étape 4
Concentrez-vous sur l'intégration de la logique Redux dans une application React. Connectez les composants React et le store Redux pour permettre la gestion de l'état et des actions.
Exemple
Application de Suivi des Navires
Défi
Form.jsx :
- Ouvrez le fichier
Form.jsx
. - Importez le hook
useDispatch
du packagereact-redux
. Ce hook sera utilisé pour envoyer des actions au store Redux. - Importez l'action
addGoal
du fichiergoalAction.js
. Cette action est responsable de l'ajout d'un objectif au store Redux. - Initialisez la variable
dispatch
à l'intérieur du composant en appelant le hookuseDispatch
. - Complétez la fonction
handleFormSubmit
en envoyant l'actionaddGoal
. Utilisez la fonctiondispatch
et passez un objet avec les détails de l'objectif :{ id: Date.now(), text: goal }
. LeDate.now()
génère un ID unique pour chaque objectif. - Réinitialisez le formulaire après la soumission en appelant la fonction
resetForm
.
GoalList.jsx :
- Ouvrez le fichier
GoalList.jsx
. - Importez les hooks
useDispatch
etuseSelector
du packagereact-redux
. Ces hooks seront utilisés pour accéder au store Redux et envoyer des actions. - Importez l'action
removeGoal
du fichiergoalAction.js
. Cette action est responsable de la suppression d'un objectif du store Redux. - Initialisez la variable
goals
en utilisant le hookuseSelector
et accédez à l'étatgoals
du store Redux. - Initialisez la variable
dispatch
en appelant le hookuseDispatch
. - Complétez la fonction
handleRemoveGoal
en envoyant l'actionremoveGoal
. Passez l'goal
en tant que paramètre. - Terminez la logique de rendu du tableau d'objectifs en parcourant le tableau
goals
et en rendant chaque objectif. - Affichez le texte de chaque objectif et ajoutez un bouton avec un événement
onClick
qui appelle la fonctionhandleRemoveGoal
et passe l'goal
respectif.
Merci pour vos commentaires !