我正在创建一个ReactJS / Redux应用程序,其中一组类似的组件需要来自商店的相同状态和调度道具。我想为多个组件创建一个单独的redux容器,而不是为所有这些组件创建几个相同的容器。这种情况的最佳方法是什么?
答案 0 :(得分:3)
我认为,使用函数表达式作为连接的包装器是一种很好的方法;
function mapStateToProps(state){
return {
a: state.a,
b: state.b
}
}
export const wrapper = (Component) => {
return connect(mapStateToProps, {})(Component)
}
使用:
import {wrapper} from './source'
const Main = ({a, b}) => (
<div>{a} - {b}</div>
)
export default wrapper(Main);