【问题标题】:React setState() callback issue, cant access to output variable反应 setState() 回调问题,无法访问输出变量
【发布时间】:2019-09-24 06:13:39
【问题描述】:
在下面的代码中,我无法在 setState() 的回调中访问 console.log(event)。
handleChange(event){
let a = event
console.log(event)
this.setState({
[event.target.name] : event.target.value,
},()=>{
console.log(event)
// console.log("test",this.state)
})
}
【问题讨论】:
标签:
reactjs
dom
event-handling
target
setstate
【解决方案1】:
您没有将事件传递给回调,这就是您无法访问它的原因。像这样更改您的代码:
handleChange(event){
let a = event
console.log(event)
this.setState({
[event.target.name] : event.target.value,
},(event)=>{
console.log(event);
})
}
希望这会有所帮助!
【解决方案2】:
您好,请查看link
handleChange(e) {
let name = e.target.name;
let value = e.target.value;
this.setState({ name: value })
}
【解决方案3】:
this.setState({name: e.target.value}, ()=> {
console.log(this.state.name)
})
希望这能解决问题。