1 回答
TA贡献1866条经验 获得超5个赞
您可以将checkDate(event)函数移动到函数内部,因为这里的事物是异步的,因此在设置状态时您可以调用this.setState类似的东西,handleChangecheckDate(event)
handleChange = (event) => {
this.setState(
{
[event.target.name]: event.target.value
},
() => {
this.checkDate(event);
}
);
};
然后像这样修改checkDate函数,
checkDate = async (event) => {
let d1 = new Date(this.state.dateFrom);
let d2 = new Date(this.state.dateTo);
if (d1.getTime() < d2.getTime()) {
this.setState({
validate: false
});
} else {
this.setState({
validate: true
});
}
console.log(d1.getTime());
console.log(d2.getTime());
console.log(this.state.validate);
};
也改变条件,
d1.getTime() > d2.getTime() 截止 d1.getTime() < d2.getTime()日期d1应该总是小于d2日期...
添加回答
举报