У меня есть компонент контейнера response-redux, который создается в компоненте React Native Navigator. Я хочу иметь возможность передавать навигатор в качестве опоры этому компоненту контейнера, чтобы после нажатия кнопки внутри его презентационного компонента он мог помещать объект в стек навигатора.
Я хочу сделать это без необходимости вручную писать весь шаблонный код, который дает мне контейнерный компонент react-redux (а также не пропустить все оптимизации, которые response-redux также даст мне здесь).
Пример кода компонента контейнера:
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
И я бы хотел иметь возможность вызывать такой компонент из моей renderScene
функции навигатора :
<SearchViewContainer navigator={navigator}/>
В приведенном выше коде контейнера я должен иметь доступ к этой переданной опоре изнутри mapDispatchToProps
функции.
Я не хочу хранить навигатор в объекте состояния redux и не хочу передавать опору презентационному компоненту.
Есть ли способ передать опору этому компоненту контейнера? В качестве альтернативы, есть ли какие-либо альтернативные подходы, которые я упускаю?
Благодарю.