我有:
const mapDispatchToProps = dispatch => (
{
slipsRadioClickHandler: (value) => {
dispatch(slipsRadioClicked(value));
switch (value) {
case 'slips': {
dispatch(requestSlips());
dispatch(setExpandCollapse('slipsHide', true, 0))
break;
}
default:
break;
}
}
}
);但是setExpandCollapse('slipsHide',true,0)必须被发送17次,这是一个列表的长度。这份名单在本州。如何访问此列表以分派操作列表。长度次数?
发布于 2017-04-11 17:18:16
mapDispatchToProps不是您应该拥有代码逻辑的地方。它的目的是将操作绑定到组件的道具上。
用
const mapDispatchToProps = dispatch => (
{
slipsRadioClickHandler: (value) => {
dispatch(slipsRadioClicked(value));
},
requestSlips: dispatch(requestSlips()),
setExpandCollapse: () => {dispatch(setExpandCollapse('slipsHide', true, 0))}
}
);在组件中,您需要遍历由mapStateToProps提供的列表。
var value = 'slips' // set the value how you want to
this.props.List.map(function(item){
switch (value) {
case 'slips': {
this.props.requestSlips();
this.props.setExpandCollapse();
break;
}
default:
break;
}
})https://stackoverflow.com/questions/43351618
复制相似问题