Вступить в клуб →
лёгкаявопросReact Native: списки, рендер и нативная часть

После ухода с экрана заказа статус доставки продолжает опрашиваться каждые 5 секунд

useEffect(() => {
  setInterval(() => {
    api.getStatus(orderId).then(setStatus);
  }, 5000);
}, [orderId]);

В логах сервера видно: пользователь открыл пять заказов подряд, и теперь приложение опрашивает все пять. Что исправит проблему?

  • Вернуть из эффекта функцию с clearInterval
  • Убрать orderId из массива зависимостей
  • Заменить setInterval на setTimeout
  • Перенести setInterval в тело компонента

🔒 Проверка ответа — для участников клуба

  • Проверка ответа
  • Подсказка, если застряли
  • Разбор с объяснением, почему так
  • Прогресс по всем задачам и виртуальные собеседования
Зарегистрироваться →

Регистрация занимает минуту

Другие задачи раздела