Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

329
Vistas
¿Cómo resolver el problema de la función async-await al usar Axios?

Quiero usar axios usando la función de espera asíncrona.

Pero cuando uso la función de espera asíncrona, aparece un error.

 useEffect(async() => { await axios .get("https://cryptic-inlet-27003.herokuapp.com/products?size=6") .then((data) => setItems(data.data)); }, []);
about 4 years ago · Juan Pablo Isaza
3 Respuestas
Responde la pregunta

0

Está usando tanto promesas como async/await al mismo tiempo, ya sea usando .then() o async/await: Aquí he mostrado cómo puede hacer esto usando promesas:

 useEffect(async() => { axios.get("https://cryptic-inlet-27003.herokuapp.com/products?size=6") .then(function (response) { setItems(response.data); }) .catch(function (error) { console.log(error); })}, [])

Aquí estoy usando async await:

 useEffect(async() => { let response = await axios.get("https://cryptic-inlet- 27003.herokuapp.com/products?size=6") setItems(response.data); }, [])
about 4 years ago · Juan Pablo Isaza Denunciar

0

No puede usar una espera asíncrona dentro de useEffect porque esa no es una metodología de reacción, tiene que cambiar su código lógico a otro, por ejemplo, use useState varaibles y con el resultado de axios actualizará useState varaibles , algo así como que:

 const [items, setItems]=useState({})//any useEffect(async() => { axios .get("https://cryptic-inlet-27003.herokuapp.com/products?size=6") .then((data) => setItems(data.data)); }, []); useEffect(()=>{ console.log(items, 'this items changed') //to do... }, [items])

o

 const [items, setItems]=useState({})//any async function requestAxios(){ const data=await axios.get("https://cryptic-inlet-27003.herokuapp.com/products?size=6") setItems(data.data) } useEffect(async() => { requestAxios() }, []); useEffect(()=>{ console.log(items, 'this items changed') //to do... }, [items])
about 4 years ago · Juan Pablo Isaza Denunciar

0

El problema es que está usando promesas y async/await al mismo tiempo. Async/await no es más que una capa de azúcar de promesas. Puedes leer más sobre las promesas aquí .

 const fetchData = async () => { const { data } = await axios.get("https://cryptic-inlet-27003.herokuapp.com/products?size=6") // do something with data! }; useEffect(async() => { fetchData(); }, []);
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda