> Какие аргументы принимает setState с функцией обратного вызова в React (React, TypeScript)

Уровень: senior · Роль: frontend · Категория: Технические вопросы

Компании: EvApps

Стек: React, TypeScript

> Пример ответа

setState с функцией обратного вызова принимает два аргумента:

  1. Функция-апдейтер (обязательный) - (prevState: State, props: Props) => Partial<State>.
    Она получает предыдущее состояние и текущие пропсы, возвращает объект изменений. Используется для атомарных обновлений, когда новое состояние зависит от предыдущего (например, инкремент счётчика).

  2. Функция обратного вызова (опциональный) - () => void.
    Выполняется после того, как состояние было обновлено и компонент перерендерен. Полезна для выполнения действий, требующих актуального состояния (например, логирование или вызов API).

Пример на TypeScript:

TSX
this.setState(
(prevState, props) => ({ count: prevState.count + props.step }),
() => console.log('Состояние обновлено:', this.state.count)
);

> ГОТОВЫ К СЛЕДУЮЩЕМУ СОБЕСЕДОВАНИЮ?

Запустите тренировочную сессию с ИИ и получите детальную обратную связь, чтобы увереннее проходить реальные интервью