Ich habe Schwierigkeiten zu verstehen, wie man redox zusammen mit react-router verwendet.
index.js
%Vor%App.js
%Vor%Show.js
%Vor%Dies wirft
Uncaught TypeError: Kann die Eigenschaft 'map' von undefined
nicht lesen
Die einzige Lösung, die ich gefunden habe, ist, diese anstelle von {children} zu verwenden:
%Vor%Ist das wirklich der richtige Weg?
Verwenden Sie react-redux
Um beliebige Ersteller von Status oder Aktionen in props
einer React-Komponente zu injizieren, können Sie connect
von % co_de verwenden % , das ist die offizielle React-Bindung für Redux.
Es lohnt sich, die Dokumentation für react-redux
hier .
Als ein Beispiel basierend auf dem, was in der Frage angegeben ist, würden Sie so etwas tun:
%Vor% Damit dies funktioniert, müssen Sie Ihre Root-Komponente oder Ihren Router mit einem connect
von Provider
umschließen (dies ist bereits in Ihrem obigen Beispiel vorhanden). Aber zur Klarheit:
Wenn für Komponenten kein Status oder Aktionsersteller erforderlich ist, können Sie einfach eine "dumme" React-Komponente exportieren, und beim Rendern wird der Status Ihrer App nicht angezeigt.
Ich habe es gelöst, indem ich den Zustand mit connect in jeder Komponente explizit zugeordnet habe:
%Vor%Auf diese Weise kann ich entscheiden, auf welche Eigenschaften des Zustands die Komponente ebenfalls zugreifen soll und die Requisiten weniger verschmutzt. Nicht sicher, ob dies die beste Vorgehensweise ist.
Tags und Links javascript reactjs redux react-router