Rev 7215 | Rev 7223 | Ir a la última revisión | Autoría | Comparar con el anterior | Ultima modificación | Ver Log |
import React, { useState, useEffect } from "react";
import axios from "axios";
function useDataFetching(dataSource) {
const { url, params } = dataSource
const [loading, setLoading] = useState(true);
const [results, setResults] = useState([]);
const [error, setError] = useState("");
useEffect(() => {
const fetchData = async () => {
try {
const { data } = await axios.get(url, { params: params });
if (!data.success) {
setLoading(false)
setResults(data.data)
return
}
setLoading(false);
setResults(data.data);
} catch (error) {
setLoading(false);
setError(error.message);
}
}
fetchData();
}, [dataSource]);
return {
error,
loading,
results
};
}
export default useDataFetching;