我有一个在 React NativeNavigator 组件中创建的 response-reducx 容器组件。我希望能够将导航器作为一个道具传递给这个容器组件,以便在其表示组件中按下按钮后,它可以将一个对象推送到导航器堆栈上。
我想这样做,而不需要手写所有的样板代码,反应还原容器组件给我(也不会错过所有的优化,反应还原会给我在这里)。
示例容器组件代码:
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 状态对象上,也不希望将道具传递给表示组件。
有没有办法把道具传给这个容器组件?或者,有没有其他我忽略的方法?
谢谢。