2
votes

Est-il judicieux d'utiliser le contexte dans l'application react-redux?

Donc, je suis débutant dans le monde React. Et je ne comprends pas: est-il judicieux d'utiliser context dans l'application react-redux? Ou il vaudra mieux utiliser la fonction connect ?


0 commentaires

4 Réponses :


0
votes

Cela dépend de ce que vous voulez réaliser. Le magasin Redux est global pour toutes vos applications tandis que le contexte n'est disponible qu'à partir du composant dans lequel vous l'avez créé à tous les composants de sa sous-arborescence.


2 commentaires

Context et Redux sont tous deux disponibles pour le sous-arbre. Habituellement, les gens encapsulent l'application avec `Provider. Pour que vous obteniez le magasin redux dans le monde entier. Cela pourrait également être réalisé en utilisant le contexte.


Vous avez raison. Nous sommes tellement habitués à envelopper le composant racine avec le fournisseur de magasin Redux que nous avons oublié que nous pouvons l'utiliser d'une manière différente :)



0
votes

Tout d'abord, déterminez votre besoin d'application, si vous souhaitez développer une petite application Web, vous pouvez la développer sans utiliser Redux et l'API contextuelle, si vous optez pour une grande application, vous pouvez penser à utiliser l'un des eux, les deux sont utilisés pour gérer l'état de votre application ou composant. Redux est une bibliothèque tierce et l'API contextuelle est conçue uniquement par Facebook.


0 commentaires

2
votes

Vous pouvez utiliser le contexte dans une application react-redux. Par exemple, vous voudrez peut-être que votre thème soit en contexte.

Utilisez Redux, lorsque les données changent fréquemment et doivent être transmises à de nombreux composants (enfants / frères et sœurs). par exemple. Formulaires en plusieurs étapes.

Utilisez State, lorsque vous avez de fréquentes modifications de données et que les données n'ont pas besoin d'être transmises à de nombreux composants ou n'ont pas besoin d'enfants profondément imbriqués. par exemple. Formulaires, états de l'interface utilisateur.

Utilisez Contexte, lorsque les données doivent être partagées dans des enfants profondément imbriqués mais que la mise à jour des données est peu fréquente. Informations de connexion, langue préférée, thème, etc.

J'espère que cela a du sens.


6 commentaires

Pourquoi ne pas tout mettre dans le magasin Redux alors et n'avoir qu'une seule source de vérité pour toutes vos données?


disons que j'ai un formulaire pour lequel des données sont soumises. Ces données (entrées utilisateur) ne sont utilisées nulle part ailleurs dans l'application. Pourquoi devrions-nous gonfler le magasin Redux? Chaque mise à jour ayant une action, un réducteur etc ... trop d'informations détaillées. Même si cela ne peut pas être réutilisé.


Oui. C'est une bonne question.


Les états de l'interface utilisateur comme celui-ci, show hide ... ces types de ne devraient pas faire partie de redux. La plupart du temps, un seul composant s'en préoccupe. Pourquoi informer l'ensemble de l'application de ce changement?


@BalavishnuVJ Je suis d'accord que les données des formulaires ne doivent pas nécessairement être dans la boutique Redux. Je vous posais plus de questions sur votre point de vue sur les informations de connexion, le thème, etc.


pour, les informations de connexion. Disons que je n'affiche que le nom et l'image de l'utilisateur. Ce changement ne change généralement pas pendant la durée de vie de l'utilisation. Je ne pense pas qu'il soit logique d'écrire autant de code standard si cela ne va pas être utilisé à nouveau. Même chose pour le thème.



4
votes

Le contexte peut être utilisé dans n'importe quelle sorte d'application react-redux.

Les deux résolvent des objectifs différents.

Redux est un outil de gestion d'état et souvent utilisé dans l'un des cas suivants.

  • Si nous devons utiliser les middlewares entre l'envoi de l'action et la réponse comme les actions de journalisation , gestion des erreurs , répartition autres requêtes en fonction de la réponse du serveur.
  • Si les données arrivent au composant a depuis plusieurs points de terminaison.
  • Cela donne un meilleur contrôle sur les actions de l'application. Redux permet de suivre les actions et les changements de données, il simplifie considérablement le débogage avec ses outils de développement.

D'autre part, Contexte fournit un moyen de transmettre des données (globalement dans l'application) à travers l'arborescence des composants sans avoir à transmettre manuellement des accessoires à tous les niveaux, tels que des traductions, des thèmes ou tout ce qui sera utilisé dans toute l'application.

En fonction de l'exigence, nous pouvons choisir quand utiliser le redux ou le contexte pour résoudre différents objectifs.


0 commentaires