gpt4 book ai didi

reactjs - 将 props 传递给 React-Redux 容器组件

转载 作者:行者123 更新时间:2023-12-03 12:54:24 25 4
gpt4 key购买 nike

我有一个在 React Native Navigator 组件中创建的 React-Redux 容器组件。我希望能够将导航器作为 Prop 传递给该容器组件,以便在其演示组件内按下按钮后,它可以将对象推送到导航器堆栈上。

我想做到这一点,而不需要手动编写react-redux容器组件给我的所有样板代码(并且也不要错过react-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 函数中访问这个传递的 prop。

我不喜欢将导航器存储在 redux 状态对象上,也不想将 prop 传递给展示组件。

有没有办法可以将 prop 传递给这个容器组件?或者,是否还有我忽略的替代方法?

谢谢。

最佳答案

mapStateToPropsmapDispatchToProps 都将 ownProps 作为第二个参数。

[mapStateToProps(state, [ownProps]): stateProps] (Function):
[mapDispatchToProps(dispatch, [ownProps]): dispatchProps] (Object or Function):

对于reference

关于reactjs - 将 props 传递给 React-Redux 容器组件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37778153/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com