/
Percival
/
react_final_project
Обзор
Документация
Войти
/
Percival
/
react_final_project
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
src/features/load-more/hooks/useLoadMore.ts
30 строк
785 B
Rituparn
Added code
23 ноя 2025, 19:02
23 ноя 2025, 19:02
2aec7c7
Код
Авторство
О чём код?
import { useCallback } from 'react'; import { useAppDispatch, useAppSelector } from '@/src/app/store/utils'; import { useProducts } from '@/src/app/store/hooks/useProducts'; import { productsActions, productsSelectors, } from '@/src/app/store/slices/products'; export const useLoadMore = () => { const dispatch = useAppDispatch(); const { products, isFetching, productsCount } = useProducts(); const page = useAppSelector(productsSelectors.getPage); const isEndOfList = products.length >= productsCount; const loadMore = useCallback(() => { if (!isEndOfList && !isFetching) { dispatch(productsActions.setPage(page + 1)); } }, [isEndOfList, isFetching, page, dispatch]); return { isEndOfList, isFetching, loadMore, hasProducts: products.length > 0, }; };