Wie der Zugriff auf Speicher in der zweiten Komponente reagieren-redux
Habe ich eine einzelne Komponente App.js
wo ich versucht zu sparen Zustand mit redux
. In index.js wo ich speichern für nur <App />
Komponente.
index.js
let store = createStore(scoreReducer);
ReactDOM.render(
<Provider store={store}><App /></Provider>,
document.getElementById("root")
);
registerServiceWorker();
Habe ich diese Methode in App.js
zuordnen Staat Requisiten, die zur Verfügung innerhalb App.js
.
App.js
function mapStateToProps(state) {
return { score: state.score, status: state.status };
}
Alles ist gut so weit, jetzt bin ich nicht sicher, wie der Zugriff { this.props.score}
in einer anderen Komponente ?
Welche änderungen muss ich tun index.js
und der zweiten Komponente, wenn ich für den Zugriff auf {this.props.score}
in einer anderen Komponente ?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn Sie Anbieter jede Komponente, die Kinder, die der Anbieter Höhere Order-Komponente zugreifen können, das speichern von Eigenschaften durch die Verwendung von
connect
Funktion.So fügen Sie das folgende in jeder Komponente, ist ein Kind des Anbieters und der Zugriff auf die Partitur prop
Jedoch, wenn diese andere Komponente ist ein direktes Kind der
App
Komponente dann können Sie auch passieren diescore prop
alsprop
auf diese Komponente von App wieProvider
?context.store
? Ich bin immerLine 94: 'context' is not defined no-undef
let store = context.store;
Provider
Komponente setzt den Kontext für alle seine Kinder, bietet der store in es. wenn Sie die High-Order-Komponente(HOC)connect
Sie können wickeln Sie jede Komponente und Zugriff auf den Shop über das mitgeliefertemapStateToProps
undmapStateToProps
egal wie verschachtelt Sie sind. Sie können auch Zugriff auf den Shop über Kontext -context.store
aber dies wird nicht empfohlen. Mit map-Funktionen und -connect
, ähnlich zu dem, was Sie mit IhremApp
Komponente, ist der beste Ansatz.render() { let store = context.store;
aber ich erhalte eine FehlermeldungLine 94: 'context' is not defined no-undef
let store = this.context.store; console.log(store);
Ich bin immer Undefinierte auf der Konsole