Встречается на собеседованиях • сегодня

Почему функция изменения значения не рендерит сразу

В React изменения состояния обрабатываются асинхронно для оптимизации производительности. При вызове setState или хука useState, React добавляет обновление в очередь и выполняет ререндер только после завершения текущего синхронного кода.

Пример:

jsx
const [count, setCount] = useState(0);

const handleClick = () => {
  setCount(count + 1); // Не вызывает мгновенный ререндер
  console.log(count); // Выведет старое значение
};

Если нужно выполнить код после обновления состояния, используй useEffect с зависимостью или колбэк в setState:

jsx
setCount(prev => prev + 1, () => {
  console.log('Updated:', count);
});

Это батчинг — группировка обновлений для минимизации ререндеров.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы