flushSync является частью того, что я называю "Rare React"; это любопытные и необычные части, внешнее кольцо API, редко используемые особые инструменты. И именно это мне нравится изучать и писать об этом статьи в блог.Итак, что делает
ReactDOM.flushSync и когда это полезно?Название предполагает, что он выполняет синхронную очистку. Но что такое "очистка", что именно очищается, и когда это должно происходить синхронно? Для чего это нужно?
function Demo() {
const [count, setCount] = useState(0);
const [flag, setFlag] = useState(false);
function handleClick() {
setCount((c) => c + 1);
setFlag((f) => !f);
}
return (
<div>
<button onClick={handleClick}>Next</button>
<h1 style={{ color: flag ? "blue" : "black" }}>
{count}
</h1>
</div>
);
}
https://julesblom.com/writing/flushsync
✍️ @React_lib