【发布时间】:2018-05-08 01:20:31
【问题描述】:
我正在尝试用setInterval 中的i 的值更新stateValue 的值,但它只更改i 的值并且不会更新setInterval 中的stateValue。
fun1 = () => {
let i = 0;
let intervalId = setInterval(() => {
console.log("i:", i);
this.setState({
stateValue: i
});
i = i + 1;
if (i === 3) {
i = 0;
}
console.log("stateValue:", this.state.stateValue);
}, 5000);
};
【问题讨论】:
-
setState 是一种异步方法。这意味着在写完 setState 之后,你不能指望状态会立即改变
标签: javascript reactjs