Redux est une bibliothèque JavaScript open-source utilisée pour gérer le statut d’une application. C’est une méthode prédictible pour gérer et mettre à jour le statut de votre application en JavaScript. Redux peut être utilisé avec n’importe quelle interface utilisateur JavaScript, mais il est particulièrement populaire avec React parce qu’il a été initialement créé comme une réponse à l’architecture de l’état dans React.
Conceptuellement, Redux est vraiment simple. Il a trois parties principales :
1. L’état entier de votre application est stocké dans un object JavaScript à l’intérieur d’un magasin unique (store). Cela facilite beaucoup les choses, car il n’y a qu’un seul endroit où vous devez rechercher vos données, par opposition à une situation où de nombreuses sources différentes peuvent le modifier.
1. L’action se veut être une fonction simple qui renvoie un objet. Cet objet doit avoir une propriété de type pour dire à Redux ce que vous voulez faire et il peut également avoir un payload avec des données que vous voulez enregistrer.
1. Les réducteurs (Reducers) sont des fonctions qui prennent l’état actuel de votre application, effectuent une action et renvoient un nouvel état.
La beauté de Redux réside dans sa simplicité et sa prévisibilité. L’état est immuable et ne change pas. Chaque fois qu’une action se produit, un nouvel état est créé.
Fonctionnement en étapes :
1. Vous envoyer (“dispatch”) une action (un simple objet JavaScript) comme ‘Ajouter un nouvel utilisateur’.
2. Le magasin (store) appelle le reducer avec l’état courant et l’action que vous avez envoyée dans l’étape précédente.
3. Le reducer crée un nouvel état en fonction de l’action envoyée.
4. Le magasin sauvegarde ce nouvel état et le nouvel état est prêt à être utilisé.