Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Задачи

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

Специализация

Python Backend Developer

Java Backend Developer

Node.js Backend Developer

Golang Backend Developer

React Frontend Developer

Посмотреть все

Выберите навыки

React

React

JavaScript

JavaScript

Git

Git

Redux

Redux

Webpack

Webpack

Посмотреть все

Сложность

1-3

4-6

7-8

9-10

Рейтинг вопросов

1

2

3

4

5

Подпишись на React Developer в телеграм

Вопросы React Frontend Developer


Как управлять фокусом с помощью хука useRef?

Хук useRef используется для получения доступа к DOM-элементам в React. Вы можете создать реф с помощью useRef, а затем присвоить его элементу через атрибут ref. Это позволяет вам управлять фокусом, используя методы, такие как focus() для установки фокуса на элемент, например, при загрузке компонента или по событию, как нажатие кнопки.

Подробнее

Как работает useRef и что он возвращает?

useRef возвращает объект с полем current.
Значение current сохраняется между рендерами.
Изменение current не вызывает перерендер.
Чаще всего useRef используют для доступа к DOM или хранения служебных данных.

Подробнее

Как useRef используется для работы с DOM?

useRef позволяет получить ссылку на DOM-элемент и обращаться к нему напрямую. Значение ref сохраняется между рендерами и не вызывает перерисовку при изменении. Это удобно для фокуса, измерений и интеграции с нативными API. useRef часто используют там, где состояние React избыточно. Он работает как контейнер для изменяемого значения.

Подробнее

Чем useRef отличается от useState?

useState используется для хранения данных, изменение которых должно вызывать перерендер компонента. useRef хранит изменяемое значение, изменение которого не вызывает перерендер. useRef часто применяют для доступа к DOM-элементам или для хранения технических значений (таймеры, предыдущие значения). Выбор зависит от того, влияет ли изменение значения на отображение UI.

Подробнее

Как связать внешний объект с React через useRef?

useRef позволяет хранить ссылку на внешний объект между рендерами без их запуска. Через ref.current можно читать и изменять данные, но React не будет автоматически перерисовываться. Чтобы изменения отразились в UI, нужно дополнительно инициировать ререндер, например через useState или подписку. useRef подходит для хранения ссылок, а не реактивного состояния.

Подробнее

Почему useRef не вызывает ререндер при изменении значения?

Как подсчитать количество ререндеров компонента?

Как оптимизировать React-компонент с таймером?

  • Рейтинг:

    4

  • Сложность:

    3

useRef возвращает изменяемый (mutable) объект, свойство .current которого можно менять. Изменение .current не вызывает ререндер компонента, потому что React не отслеживает изменения внутри ref-объекта для целей обновления UI. В отличие от useState, вызов setState помечает компонент как нуждающийся в ререндере. useRef предназначен для хранения значений, которые должны сохраняться между рендерами, но не влияют на визуальный вывод.
Подробнее
  • Рейтинг:

    3

  • Сложность:

    4

Для подсчета ререндеров используйте useRef, который сохраняет значение между рендерами без вызова нового рендера. Создайте счетчик через useRef(0) и увеличивайте его в теле компонента. Затем выводите значение в useEffect или прямо в JSX. Это позволяет отследить, сколько раз компонент обновился.
Подробнее
  • Рейтинг:

    4

  • Сложность:

    5

Для оптимизации React-компонента с таймером используйте хук useEffect для установки таймера и обязательно очищайте его в функции cleanup, чтобы избежать утечек памяти. Используйте useRef для хранения идентификатора таймера, чтобы он сохранялся между рендерами. Это гарантирует, что таймер будет корректно остановлен при размонтировании компонента или изменении зависимостей.
Подробнее
  • Рейтинг:

    3

  • Сложность:

    5

  • Рейтинг:

    5

  • Сложность:

    6

  • Рейтинг:

    5

  • Сложность:

    4

  • Рейтинг:

    5

  • Сложность:

    5

  • Рейтинг:

    3

  • Сложность:

    6