同一个问题,如何在useState更新后做逻辑处理,比如,setCount(count=>count+1) , 保证count 更新了,才去调用某些方法

来源:3-5 useState到底是同步更新还是异步更新

慕函数3061895

2024-05-07

const [count,setCount] = useState(0)
flushSync(()=>{
console.log(count)
setCount(count=>count + 5)
})
console.log(count)

这里第1个console.log(count) 是0
这里第2个console.log(count) 还是0
没有更新,还是异步的,那么如何用count更新后的值做为入参,调用其他方法

写回答

1回答

河畔一角

2024-05-07

在实际开发中,一般我们会结合useeffect去使用。因为setState会触发渲染,所以通过useEffect(,[count])这种方式,会自动监听到count的变化从而调用方法。 上面我提到的flushSync我上午试一下,我记得是做同步用的。 但是有一个知识点是变不了的,那就是setState一定会触发渲染

0
0

React18+TS 通用后台管理系统解决方案落地实战

全面提升React高阶技能,灵活驾驭各类后台管理系统开发痛点

625 学习 · 227 问题

查看课程