窗口与渲染器约 1 分钟
flushSync
flushSync 强制让 React 的渲染与提交在返回之前完成,一直到底层的一次 applyBatch 调用。
该 root 是一个并发 root,因此 React 会在随后的微任务中提交。flushSync 会强制让渲染与提交在返回之前完成,这与 react-dom 中的行为一致。
import { flushSync } from '@gpuix/react'
flushSync(() => setSidebarOpen(true))
它只 flush React 本身,一直到底层的一次 applyBatch 调用。返回之后,原生 retained 树(包括样式与文本)就是最新的。
当一个顺序相关的 bug 依赖于提交先落地时使用它:例如先卸载再重新挂载,或者先改变状态再喂入下一个事件。