可以阻止 React 的自动批处理(automatic batching)吗?如何做?
Is it possible to prevent automatic batching?
题目类型: 技术面试题
这是一道技术面试题,常见于澳洲IT公司面试中。
难度: hard
分类: Rendering, State Management
标签: automatic batching, flushSync, react-dom, re-render, DOM flush
参考答案摘要
答案 可以。某些情况下你可能希望每次 state 更新都立即触发 re-render,例如更新顺序依赖、或者每次更新都必须立即同步到 DOM。 针对这种场景,React 提供了 react-dom 的 flushSync 方法,用于立即把 state 更新 flush 到 DOM,从而绕过 automatic batching。 在 onClick 事件中使用 flushSync 的示例: imp...
本题提供 STAR 原则详细解答和技术解析,登录匠人学院学习中心即可查看完整答案。