Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

234
Visualizações
¿Cómo uso los resultados de Promise.all en un componente React?

Necesito averiguar cómo obtener varios archivos GeoJSON de mi carpeta pública y representar las coordenadas en un componente React. Aquí está el fragmento de código relevante:

 export const CoordinatesComponent = () => { const [data, setData]: any = useState([]); const [isLoading, setLoading] = useState(true); useEffect(() => { let isMounted = true; const dataPromises = Promise.all([ fetch("data/boundary.json", { headers: { "Content-Type": "application/json", Accept: "application/json", }, }), fetch("data/neighborhoods.json", { headers: { "Content-Type": "application/json", Accept: "application/json", }, }), ]) .then((response) => response.map((a) => a.json())); const setState = () => { if (isMounted) { dataPromises.then((a) => setData(a)); setLoading(false); } return () => { isMounted = false; }; }; setState(); }, []); if (isLoading) { return <div>Loading...</div>; } return ( <div>{data}</div> // Just a placeholder. This array of geoJson objects would be fed into another component ); };

Si bien puedo hacer esto con una sola operación de búsqueda, estoy luchando para que esto funcione con Promise.all. Cuando consuelo. registro la variable de datos, veo una matriz de objetos indefinidos. ¡Cualquier ayuda sería muy apreciada!

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

El problema es con then siguiente bloque. Dado que ahora tiene una serie de promesas, obtener JSON de las respuestas será el mismo problema y deberá devolver las promesas res.json() en una llamada Promise.all .

 then((response) => response.map((a) => a.json()));

Debe corregirse como se muestra a continuación.

 then((responses) => Promise.all(responses.map((res) => res.json())));

Editar romantic-parm-2501ne

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda