2017-07-14 3 views
-2

Je suis intéressé par les réflexions sur la meilleure façon de résoudre le problème suivant. Je maintiens un état dans react-redux, pourrait être n'importe quoi, une collection d'entités par exemple. Je ne mets à jour l'état que si je persiste (via appel API) ou récupérer des entités du serveur. J'ai un formulaire où je peux éditer l'entité avant de la persister (supposons que ce n'est pas une forme singleton, mais une forme active par entité pour l'argument). Fondamentalement le problème que j'essaye de résoudre est comment conserver une copie de bloc-notes de l'entité dans le magasin de redux pour être lié aux composants de forme, pour être persisté (retour au serveur et au magasin) seulement quand l'édition entière de forme est complet (pas lié directement au magasin via l'état), car chaque édition nécessiterait alors un aller-retour vers le serveur et ce ne serait pas très performant. Les idées sont les bienvenues. Merci.Maintien d'un état d'affichage du bloc-notes dans le mode-réaction

+0

Depuis personne n'a répondu et j'ai trouvé ce que je pense est une solution acceptable au problème. Je vais le partager ici au cas où quelqu'un d'autre cherche la même information. – Hashibuto

Répondre

0

donc la solution que je décide sur est la suivante:

  1. Prenez une copie d'une entité donnée de l'état Redux et le garder dans l'état local lors de l'édition commence.
  2. L'édition se produit dans l'état redux via une action de persistance d'entité. De cette façon, l'état de redux est toujours à jour.
  3. Si l'édition est abandonnée, la copie redevient à l'état redux.
  4. Une fois l'édition terminée, une action asynchrone est envoyée pour conserver l'entité. L'état de la vue est déjà à jour.

Cela semble fonctionner pour moi.