No puedo entender por qué recibo este error en const [isLoading, setLoading] = useState(true);
Se declara como verdadero desde el principio, así que no puedo entender cómo es que nunca está definido
export default async function GetProducts() {
const [isLoading, setLoading] = useState(true);
const [products, setProducts] = useState([]);
useEffect(() => {
if (isLoading) {
let url = 'http://127.0.0.1:8000/products'
const res = axios.get(url);
let data = res.json()
}});
if (isLoading) {
return GetLoadingScreen()
} else {
return RenderProducts(products)
}
}
Solución del problema
Considere no marcar la función del componente React como asíncrona y marcar la función creada useEffect
como asíncrona en su lugar.
export default function GetProducts() {
const [isLoading, setLoading] = useState(true);
const [products, setProducts] = useState([]);
useEffect(async () => {
if (isLoading) {
let url = 'http://127.0.0.1:8000/products'
const res = await axios.get(url);
let data = res.json()
}});
if (isLoading) {
return GetLoadingScreen()
} else {
return RenderProducts(products)
}
}
No hay comentarios:
Publicar un comentario