У меня есть два компонента, которые отображают разные интерфейсы в зависимости от типа пользователя. Оба компонента имеют почти 50% сходную логику получения данных из API, подключенных к хранилищу.
Я пытался повторно использовать логин, создавая пользовательский хук.
const { products, loading} = useFetchProducts(userId);
и теперь я могу определить редуктор UseFetchProducts
const useFetchProducts= (userId) => {
const [ loading, setLoading ] = useState(false);
const [ products, setProducts ] = useState(null);
useEffect(() => {
setLoading(true);
fetchUserProducts(userId).then((res) => {
setLoading(false);
setProducts(res.data);
});
}, [])
}
Как вернуть продукты и состояние загрузки в мой компонент из этого редуктора, чтобы скрыть или показать загрузчик, а также показать список продуктов,