2016-10-25 6 views
0

In meiner Anwendung gibt es Ansichten mit Abhängigkeiten. Zum Beispiel könnte ein Benutzer in einer Ansicht ein Element aus einer Liste (auf dem Server erzeugt) auswählen, und in der nächsten Ansicht würde der Benutzer Operationen an dem Element ausführen. Das Objekt wird in Requisiten an die zweite Ansicht übergeben. Ich ziehe zum Verwenden des reagierenden Fräsers um, aber es gibt einige Schwierigkeiten:React Router - Ansichten mit Abhängigkeiten

  • Ich kann Requisiten für das Übertragen von Daten nicht mehr verwenden. Was wäre ein bevorzugter Weg, um Daten weiterzugeben? Muss ich Redux verwenden?
  • Benutzer können von jeder Ansicht zu jeder anderen Ansicht navigieren, indem sie direkt URL verwenden. Einige Übergänge sind jedoch nicht sinnvoll: z.B. Der Benutzer navigiert von einer anderen Stelle zur Bearbeitungsansicht und hat daher kein Element ausgewählt. Gibt es eine Möglichkeit, zulässige Übergänge zu begrenzen?

Antwort

0

Dies ist eine sehr weit gefasste Frage, aber ich werde einen Stich daraus machen.

Können Sie Redux verwenden? Sicher, Redux ist gut für die Zentralisierung Ihres Staates, der leicht unter Ihren Komponenten geteilt werden kann. Was die Beschränkung der URLs angeht, auf die sie Zugriff haben, würde ich Ihren Reducer verwenden, um Ihren aktuellen Status zu sehen. Wenn Sie Redux verwenden und wenn Daten nicht vorhanden sind, dh sie sollten nicht bei diesem Schritt sein, verwenden Sie eine JavaScript-Weiterleitung zu wo sie stattdessen sein sollten.

Schließlich müssen Sie Redux nicht verwenden, um Daten zwischen Komponenten zu teilen, dies könnte durch Setzen globaler Variablen, auf die Ihre Komponenten zugreifen können, erfolgen, aber Cross-Komponenten-Kommunikation ist, wo Redux glänzt.