Ich habe eine Reaktiv-Redux-Containerkomponente, die in einer React Native Navigator-Komponente erstellt wird. Ich möchte in der Lage sein, den Navigator als Requisite an diese Container-Komponente zu übergeben, so dass nach dem Drücken einer Schaltfläche innerhalb ihrer Darstellungskomponente ein Objekt auf den Navigator-Stack geschoben werden kann.Übergeben von Requisiten zur Reaktivverdünnung der Containerkomponente
Ich möchte dies tun, ohne alle Codeleser schreiben zu müssen, die die react-redux container-Komponente mir gibt (und auch nicht alle Optimierungen verpassen, die reactive-redux mir auch hier geben würde).
Beispiel Container Komponentencode:
const mapStateToProps = (state) => {
return {
prop1: state.prop1,
prop2: state.prop2
}
}
const mapDispatchToProps = (dispatch) => {
return {
onSearchPressed: (e) => {
dispatch(submitSearch(navigator)) // This is where I want to use the injected navigator
}
}
}
const SearchViewContainer = connect(
mapStateToProps,
mapDispatchToProps
)(SearchView)
export default SearchViewContainer
Und ich würde will die Komponente so nennen können, aus meinem Navigator renderScene
Funktion:
<SearchViewContainer navigator={navigator}/>
Im Container Code oben, Ich müsste auf diese übergebene Requisite innerhalb der mapDispatchToProps
-Funktion zugreifen können.
Ich habe keine Lust, den Navigator auf dem Redux-Statusobjekt zu speichern und möchte die Prop nicht an die Präsentationskomponente übergeben.
Gibt es eine Möglichkeit, eine Requisite an diese Container-Komponente zu übergeben? Alternativ, gibt es irgendwelche alternativen Ansätze, die ich übersehe?
Danke.
Wie bekomme ich Zugriff auf es in mapDispatchToProps? – Michael
@Michael auf die gleiche Weise können Sie das zweite Argument verwenden –