如何将参数传递给mapStateToProps()
?
EG:
const mapStateToProps = (state, dimenType: string) => {
var jsonVariable = {}
for(var i=1; i <= 3; i++) {
jsonVariable[dimenType + i] = dimenType + i
}
console.log(jsonVariable)
return {
width1: state.get('width').get('width1').toString(),
width2: state.get('width').get('width2').toString(),
width3: state.get('width').get('width3').toString()
}
}
这是我不确定的:
Width = connect(
mapStateToProps(/*redux store goes here somehow*/, 'thickness'),
mapDispatchToProps
)(Width)
我希望redux商店仍然传递到mapStateToProps
,但也传递"thickness"
。我如何在connect()
函数中执行此操作?
答案 0 :(得分:5)
connect
的第二个参数是ownProps
,它们是传递给Component
的道具。所以在你的情况下你可以像这样使用它:
const mapStateToProps = (state, ownProps) => {
let jsonVariable = {}
for(var i=1; i <= 3; i++) {
jsonVariable[dimenType + i] = ownProps.dimenType + i
}
console.log(jsonVariable)
return {
width1: state.get('width').get('width1').toString(),
width2: state.get('width').get('width2').toString(),
width3: state.get('width').get('width3').toString()
}
}
我假设您正在创建这样的组件:<Width thickness={10}/>