gpt4 book ai didi

javascript - setState 会立即设置状态吗?

转载 作者:行者123 更新时间:2023-11-28 18:17:15 26 4
gpt4 key购买 nike

我正在尝试使用 setState 存储值,但是我正在设置状态,并且在下一行中我尝试对其进行 console.log,但我无法在控制台中看到该值。

getInitialState: function(){
return{
myCountry: ""
}
}


var country = event.target.value;
this.setState({"myCountry": country});
console.log(this.state.myCountry); //prints nothing
console.log(event.target.value);

当我浏览这个时,我看到 setState 是异步的,但我无法理解。

最佳答案

调用 setState() 后不会立即获得更新后的状态值。这是因为一旦调用 setState() , View 就会重新渲染。所以最好检查render内部更新的值或者在setState中添加回调函数。
示例:

this.setState({"myCountry": country},function(){console.log(this.state.myCountry)});

或者,

render: function() {
console.log(this.state.myCountry)
}

关于javascript - setState 会立即设置状态吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40624366/

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