我想知道其他人如何处理将redux动作创建者从智能顶级组件传递到许多较低级别的哑组件而不会使他们的道具定义膨胀.
例如,遵循这个关于redux的优秀教程,如果我将动作创建者列表传递给道具,就像这样
import Voting from './Voting';
import * as actionCreators from '../action_creators';
...
export const VotingContainer = connect(
mapStateToProps,
actionCreators
)(Voting);
Run Code Online (Sandbox Code Playgroud)
然后在我的Voting组件中,我可以访问actionCreators,这非常酷.
但是,如果我说20个用于投票的actionCreator及其所有子组件,例如.
Voting -> VotingContainer -> VotingDetail -> VotingFoo -> VotingBar
Run Code Online (Sandbox Code Playgroud)
然后我最终得到了这样的渲染函数
class Voting extends React.Component {
render(){
<VotingContainer
actionCreator1={this.props.actionCreator1}
.
.
.
actionCreator15={this.props.actionCreator15} />
}
}
class VotingContainer extends React.Component {
render(){
<VotingDetail
actionCreator1={this.props.actionCreator1}
.
.
.
actionCreator12={this.props.actionCreator12} />
}
}
.
.
.
class VotingFoo extends React.Component {
render(){
<VotingBar
actionCreator1={this.props.actionCreator1}
.
.
.
actionCreator6={this.props.actionCreator6} />
}
}
Run Code Online (Sandbox Code Playgroud)
对于这种情况是否有一种最佳实践,这种方法可以将actionCreators组合在一起,而不需要在每一步都没有大量的样板?我在任何教程/示例中都没有看到任何内容......
| 归档时间: |
|
| 查看次数: |
1824 次 |
| 最近记录: |