gpt4 book ai didi

javascript - Redux store不随react状态的变化而变化

转载 作者:行者123 更新时间:2023-12-01 01:53:20 25 4
gpt4 key购买 nike

我正在尝试根据当前状态更改来更改 redux 存储,状态更改正确,但 this.props 仍为初始化。这是我的代码:

componentWillMount(){
this.props.fetchMatches();
}

handleChange(newDateRange){
console.log('====================================');
console.log('handleChange fired');
console.log(this.state);
console.log('====================================');
}


function mapDispatchToProps(dispatch) {
return {
handleChange: (newDateRange) =>
dispatch({
...this.props.home,
startDate: newDateRange[0],
endDate: newDateRange[1]
})
}
}

export default connect(mapStateToProps, { mapDispatchToProps, fetchMatches })(Home);

这是 DateRange 的实现:

<DateRangeInput className="daterange" value={[this.props.startDate, this.props.endDate]} onChange={this.handleChange}  />       

最佳答案

您无法从此访问mapDispatchToProps内的 Prop ,因为即使在挂载组件之前也会调用该函数。而是从 mapDispatchToProps 访问它,它在第二个参数中公开了先前的 props。

function mapDispatchToProps(dispatch, ownProps) {
return {
handleChange: (newDateRange) =>
dispatch({
...ownProps.home,
startDate: newDateRange[0],
endDate: newDateRange[1]
})
}
}

mapDispatchToProps API Documentation

关于javascript - Redux store不随react状态的变化而变化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51244743/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com