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

86
Vistas
React no se vuelve a procesar cuando se completa la respuesta de la API

Tengo un problema que aparece en muchos de mis proyectos de reacción cuando llamo a una API. Esta solicitud devuelve una respuesta, pero los datos de respuesta no aparecen en la vista de reacción (en el navegador), incluso llamar a la función de configuración de un estado para actualizar los datos no funciona.

Me veo obligado a interactuar con el dom para activar la llegada de la respuesta (como hacer clic en un botón, escribir algo, etc.) o para pasar los datos a un componente secundario. ¿Alguien tiene una idea sobre ese problema?

Esta es mi función de búsqueda que está funcionando bien

 const afficherBase = (baseId, table, view, fields = []) => { let base = Airtable.base(baseId); return new Promise((resolve, reject) => { let recs = [] base(table).select({ //maxRecords : 15, view : view, fields : fields }).eachPage(function page(records,fetchNextPage) { recs.push(records) fetchNextPage(); }, function done(err) { if(err) { console.log(err); reject(err)} }) console.log(recs) resolve(recs) })

}

Y esa es mi función de inicio useEffect para mi componente:

 useEffect(() => { const asyncPrepare = async() => { let res = await Promise.resolve(renderView("a","ContactFull","Coordonnées")) console.log(res) setTimeout(() =>{console.log("rerender ?")}, 4000) setBdd({...bdd, records : await res}) // setUpdating(true) // setTestUpdate(true) console.log(bdd.records) } const prepare = () => { renderView("a","Animation Communauté","Grid view") .then((res) => { console.log(res) let data = res return data }) .then((data) => { console.log("data") console.log(data) setBdd({...bdd, records : data}) console.log(bdd.records) }) .catch((err) => { console.error(err) }) } prepare() },[])

¿Tienes alguna idea para resolver este problema?

about 4 years ago · Santiago Gelvez
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