> Как работает useRef хук в React и для чего он используется (React)
Уровень: senior · Роль: frontend · Категория: Технические вопросы
Компании: ITQ Group МКБ БАНК, Альфа-банк, ДиджиталСектор, VK, Домклик, IT-One, Swetec, Софт Медиа Групп, EPAM, ПСБ, Exness, Сбер
Стек: React
> Пример ответа
useRef - это хук в React, который возвращает изменяемый ref-объект с свойством .current. В отличие от useState, изменение .current не вызывает повторный рендер компонента. Основные сценарии использования:
-
Доступ к DOM-элементам: например, для фокуса на инпуте при монтировании:
JSXconst inputRef = useRef(null);useEffect(() => inputRef.current?.focus(), []);return <input ref={inputRef} />; -
Хранение мутируемых значений между рендерами: например, для хранения предыдущего значения состояния или идентификатора таймера:
JSXconst prevCount = useRef(count);useEffect(() => { prevCount.current = count; }, [count]); -
Избежание замыканий: ref остаётся стабильным на протяжении всего жизненного цикла компонента, что полезно в колбэках.
Важно: useRef не предназначен для хранения данных, влияющих на UI - для этого используйте useState.
> Похожие задачи по frontend
В чем отличие useEffect от useLayoutEffect в React
Как работает жизненный цикл React-компонентов
Что такое React.memo и как он помогает оптимизировать рендеринг
Что такое виртуальный DOM и зачем он нужен
> ГОТОВЫ К СЛЕДУЮЩЕМУ СОБЕСЕДОВАНИЮ?
Запустите тренировочную сессию с ИИ и получите детальную обратную связь, чтобы увереннее проходить реальные интервью