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

Что если передать пустой массив в useEffect

Если передать пустой массив [] вторым аргументом в useEffect, это означает, что эффект будет выполнен только один раз - после первого рендера компонента. Это аналог componentDidMount в классовых компонентах.

jsx
useEffect(() => {
  console.log('Это сработает только при монтировании');
}, []); // Пустой массив зависимостей

Особенности:

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

Пример с очисткой:

jsx
useEffect(() => {
  const timer = setInterval(() => {
    console.log('Таймер');
  }, 1000);

  return () => clearInterval(timer); // Очистка при размонтировании
}, []);
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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