这个问题还与在 React 组件中的函数内使用更新的 Redux 状态有关。我想知道如何在 React 的某种形式的循环中使用/更新状态。例子:
useEffect(() => {
const interval = setInterval(() => {
setCount(count + 1)
console.log('Count:', count)
}, 3000);
return () => clearInterval(interval)
}, [])
这将返回到控制台:
Count: 0
Count: 0
Count: 0
Count: 0
...
我需要做些什么来避免这种情况?(我想得到 Count: 0, Count: 1, Count: 2 作为结果)
您应该将函数传递给setCount
:
useEffect(() => {
const interval = setInterval(() => {
setCount(prevCount => {
console.log('Count:', prevCount)
return prevCount + 1;
});
}, 3000);
return () => clearInterval(interval)
}, [])
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句