我遇到这样的情况,例如,三个组件使用商店中的相同状态以及它们唯一的状态。
我想重构它,所以我不会通过做这样的事情来重复工作:
const sharedMapStateToProps = state => ({
sharedValue1: state.sharedValue1,
sharedValue2: state.sharedValue2,
sharedValue3: state.sharedValue3,
});
const uniqeMapStateToProps = state => ({
uniqueValue1: state.uniqueValue1,
uniqueValue2: state.uniqueValue2,
});
compose(
connect(sharedMapStateToProps),
connect(uniqeMapStateToProps)
)(SomeComponent)
是否有重用和组合mapStateToProps
/ mapDispatchToProps
/ mergeProps
函数的方法?
答案 0 :(得分:0)
您尝试过吗?
compose(
connect(state => ({ ...sharedMapStateToProps(state), ...uniqeMapStateToProps(state) })),
)(SomeComponent)