> Какие хуки существуют кроме useState и useEffect (React)

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

Компании: Консорциум кодекс

Стек: React

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

Кроме useState и useEffect в React существует множество других встроенных хуков, каждый из которых решает специфические задачи:

  • useContext - позволяет подписываться на контекст React без использования Consumer-компонентов. Удобен для передачи глобальных данных (тема, локализация, пользователь).

  • useReducer - альтернатива useState для сложной логики состояния, когда следующее состояние зависит от предыдущего. Часто используется вместо Redux в небольших приложениях.

  • useRef - создает изменяемый объект, который сохраняется между рендерами. Используется для доступа к DOM-элементам, хранения таймеров или любых мутабельных данных.

  • useMemo - мемоизирует результат вычислений. Позволяет избежать дорогих пересчетов при повторных рендерах, если зависимости не изменились.

  • useCallback - возвращает мемоизированную версию функции. Полезен для передачи стабильных колбэков в дочерние компоненты, чтобы избежать лишних ререндеров.

  • useLayoutEffect - аналогичен useEffect, но выполняется синхронно после всех мутаций DOM. Используется для измерений или анимаций, которые должны произойти до того, как браузер отрисует экран.

  • useImperativeHandle - настраивает значение, которое будет возвращено родительскому компоненту при использовании ref. Обычно комбинируется с forwardRef.

  • useDebugValue - помогает отображать кастомные хуки в React DevTools для удобства отладки.

  • useTransition (React 18+) - позволяет отмечать обновления состояния как "переходные", чтобы не блокировать UI при загрузке данных.

  • useDeferredValue (React 18+) - откладывает обновление части UI, чтобы приоритетные изменения (например, ввод текста) оставались отзывчивыми.

Также существуют экспериментальные и кастомные хуки, но перечисленные - основные в современном React.

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

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