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