2016-07-07 10 views
-1

Wie kann ich die Daten in einem Geschäft abrufen, das bereits ausgefüllt wurde, um es in der render-Funktion zu verwenden?Daten von bereits gefülltem Geschäft abrufen

Zum Beispiel:

ReactDOM.render(
    <Provider store={store}> 
     <Layout/> 
    </Provider>, 
    document.getElementById('app') 
    ); 

Hier muss ich Daten an die Layout Komponente aus dem Speicher senden, die bereits die Daten hat. Ist es möglich, die geänderten Daten jedes Mal zu senden, wenn es eine entsprechende Änderung im Geschäft gibt?

+0

Haben Sie etwas versucht? Lesen Sie zuerst die Dokumentation zu "Provider". –

+0

Wenn Sie eine reaktive Komponente mit Werten im Speicher verbinden, wird die Komponente automatisch neu gerendert, wenn Änderungen an den Werten auftreten. Siehe http://redux.js.org/docs/basics/UsageWithReact.html – Robin

+0

Ich habe die Dokumentation durchgegangen, aber ich habe noch keine Lösung und jetzt weiß ich, wie man Daten in den Container der Daten mit Hilfe bekommt connect(), aber ich brauche die Daten, die anfänglich gefüllt sind, zB ich habe bereits die Daten für das Layout von einem Formular aus dem Benutzer ausgefüllt, jetzt brauche ich diese Werte an den Layout Container übergeben. –

Antwort

0

Der Anbieter setzt den Speicher auf den Kontext der React-Komponente. Anschließend verwenden Sie die @connect-Dekoratoren in Ihrer Komponentendefinition (in diesem Fall Layout), um eine Verbindung zum Geschäft herzustellen und die gewünschten Daten auszuwählen.

Die Verbindung greift aus dem Kontext auf den Speicher zu und abonniert Änderungen, sodass die Komponente jedes Mal, wenn sich die Daten im Speicher ändern, erneut gerendert wird. Du solltest niemals den Laden über Requisiten passieren, es ist eine schlechte Übung. Sie können die verbundenen Eigenschaften natürlich an Kinder weitergeben, aber nie den gesamten Laden.

Die ersten Daten, die Sie in den Store legen, werden beim ersten Start der App im DOM gerendert. Jede Änderung danach (Benutzerformular senden) mutiert den Speicher und Ihre Komponente wird durch den Verbindungsmechanismus aktualisiert.

Die Redux-Dokumente sind gut geschrieben. Ich schlage vor, Sie betrachten sie genauer. Es gibt auch viele Tutorials über Redux, die kostenlos sind, zum Beispiel unter egghead.io.