onSave=()=>{
if (this.state.intialValue<=0) {
this.setState({errorIntialValue: true})
}
else
{
this.setState({errorIntialValue: false})
}
if (this.state.age>=25|| this.state.age<=-1) {
this.setState({errorAge: true})
}
else{
this.setState({errorAge: false})
}
if (this.state.rollNo<0) {
this.setState({errorRollno: true})
}
else{
this.setState({errorRollno: false})
}
if(!(this.state.errorIntialValue|| this.state.errorAge ||errorRollno)){ //have to
enter only if no error
let newData={
intialValue:this.state.intialValue,
age:this.state.age,
rollNo:this.state.rollNo
}
this.props.updateData(newData)
}
我有一个 onClick 事件 onSave。如果出现错误,我将它们的状态设置为 true。由于 SetState 是异步的,因此该值不会更新为其状态,并且在到达时始终未定义, if(!(this.state.errorIntialValue || this.state.errorAge || errorRollno))
并且返回 false。if 块中的代码永远不会被执行。我找不到合适的方法来实现这一点。我该怎么做?