Встречается на собеседованиях • сегодня

Какие знаешь нюансы useEffect

useEffect выполняет побочные эффекты в функциональных компонентах. Основные нюансы:

  1. Зависимости (deps) – если не передать массив зависимостей, эффект будет выполняться при каждом рендере. Пустой массив [] означает запуск только при монтировании.
js
useEffect(() => {
  console.log('Монтирование');
  return () => console.log('Размонтирование');
}, []);
  1. Очистка эффекта – функция, возвращаемая из useEffect, выполняется при размонтировании или перед следующим эффектом (если есть зависимости).

  2. Асинхронность – нельзя напрямую использовать async/await в useEffect. Нужно обернуть в функцию:

js
useEffect(() => {
  const fetchData = async () => {
    const res = await fetch('url');
    // обработка данных
  };
  fetchData();
}, []);
  1. Бесконечные циклы – если эффект изменяет состояние, от которого зависит, это вызовет бесконечный рендер.

  2. Порядок выполнения – эффекты выполняются после отрисовки компонента, в отличие от useLayoutEffect.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы