Hack Frontend Community

Infinite Scroll with API

Сложная

Реализуйте бесконечный скролл с загрузкой данных из API. Требования: ✓ При скролле до конца списка загружаются следующие элементы ✓ Индикатор загрузки во время fetch ✓ Обработка ошибок загрузки с возможностью retry ✓ Предотвращение множественных запросов (debounce/throttle) ✓ Отображение сообщения "No more items" когда все данные загружены ✓ Smooth scroll experience без багов ✓ Оптимизация производительности API эндпоинт (mock): - Используйте встроенную функцию fetchUsers(page, limit) - Возвращает { data: User[], hasMore: boolean } - Имитирует задержку сети 500ms Критерии приемки: ✓ Загружается первая страница при монтировании ✓ При достижении конца списка автоматически загружается следующая ✓ Loading state показывается корректно ✓ Нет дублирующих запросов ✓ Обработаны edge cases (пустой список, ошибки, последняя страница) ✓ Производительность оптимизирована (useCallback, useMemo где нужно)