14 вопросов с ответами по теме «useEffect и жизненный цикл React»
14 вопросов
Что проверяют на интервью
Как устроена подборка
Вопросы о побочных эффектах React-компонента, условиях их повторного выполнения и очистке подписок или таймеров. Отдельные материалы сравнивают useEffect с useLayoutEffect и методами жизненного цикла классов.
В React хук useEffect может возвращать функцию очистки (cleanup function), которая вызывается при размонтировании компонента или перед повторным выполнением эффекта.
Хук useEffect в React срабатывает после рендера компонента и позволяет выполнять побочные эффекты. Управлять моментами срабатывания можно через массив зависимостей — второй аргумент useEffect.
useEffect срабатывает после того, как React отрендерил компонент и обновил DOM. Это значит, что callback внутри useEffect выполняется после фазы «commit» (фиксации изменений в DOM).
Массив зависимостей (dependency array) в хуках React (например, useEffect, useMemo, useCallback) указывает, от каких значений зависит выполнение эффекта или мемоизированной функции.
useEffect и useLayoutEffect — это хуки React, которые позволяют выполнять побочные эффекты в функциональных компонентах, но отличаются по времени выполнения:
Моргание интерфейса из-за useEffect часто происходит, когда состояние обновляется после первоначального рендера, вызывая повторный рендер с новыми данными.
Управление состоянием заголовка страницы (document.title). Подписка и отписка от событий браузера (например, изменение размера окна, клики вне элемента):