2016-12-01 5 views
0

Ich bin neu in Relay und ich versuche derzeit, Mutationen zu verwenden. In meinem Anwendungsfall habe ich ein Formular, das aus mehreren React-Komponenten besteht, und ich möchte die Änderungen/Mutationen jeder Komponente erfassen, sie in der übergeordneten Komponente kombinieren und dann die Änderungen auf den GraphQL-Server übertragen. Wie kann ich das machen?Wie kombinieren wir Mutationen in Relay aus mehreren React-Komponenten?

Die Beispiele, die ich bisher gesehen habe, befassen sich mit der Mutation, die in einer einzigen Komponente verwendet und begangen wird. Ich möchte das gleiche Muster verwenden, das für die Abfrage verwendet wird, wo Fragmente innerhalb der react-Komponente lokalisiert werden und dann kombiniert werden, um eine Abfrage für den Server zu erstellen.

Antwort

0

Ich hatte dieselbe Frage auf GitHub gestellt, wo @yachaka und @josephsavona antworteten.
ist hier @ josephsavona Antwort: -

... ein einfacher Ansatz alle Änderungen von untergeordneten Komponenten in einer übergeordneten Komponente (mit Rückrufen und lokalen Zustand oder so etwas wie Redux) zu akkumulieren wäre und dann machen eine einzelne Mutation, wenn der Benutzer die Änderungen speichert/festlegt.
Ein Muster besteht darin, mithilfe von applyUpdate jede einzelne Änderung optimistisch anzuwenden und dann alle diese optimistischen Mutationen zurückzurollen, wenn die letzte Mutation angewendet wird.

Siehe https://github.com/facebook/relay/issues/1461#issuecomment-264662371 für die vollständige Diskussion.

Verwandte Themen