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

157
Visualizações
¿Cómo obtener datos de un archivo JSON específico?

Tengo un problema con la obtención de datos de un archivo json.

El archivo json tiene algunos subconjuntos y quiero mapearlo. Creé una página de codesandbox y necesito ayuda para mapear los datos relacionados: https://codesandbox.io/s/json-data-fetch-c00rf

Cuando abras el enlace, verás que he usado React obteniendo con useEffect pero no está restringido con eso, eso significa que puedes usar otra cosa.

Los datos json provienen de aquí: https://web-coding-challenge.vercel.joyn.de/api/blocks

Aquí está el código también:

 import "./styles.css"; import React, { useState, useEffect } from "react"; export default function App() { const [todos, setTodos] = React.useState<any[]>([]); React.useEffect(() => { fetch(`https://web-coding-challenge.vercel.joyn.de/api/blocks`) .then((results) => results.json()) .then((data) => { setTodos(data); }); }, []); return ( <div className="App"> {todos.map((post: any) => ( <div> <h1>{post.id}</h1> <h2>{post.assets.primaryImage.url}</h2> </div> ))} </div> ); }
about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

Puede mapear a través de post.assets y devolver su jsx requerido

Para un ejemplo, aquí estoy enumerando todas las direcciones URL en una lista

 return ( <div className="App"> {todos.length && todos.map((post: any) => ( <div> <h2>{post.id}</h2> <ul> {post.assets.map((asset: any, index: number)=>{ return ( <li key={index}>{asset.primaryImage.url}</li> ) })} </ul> </div> ))} </div> );

salvadera

about 4 years ago · Juan Pablo Isaza Relatório

0

La respuesta contiene activos como una matriz anidada. Entonces puede usar reducir y obtener todos los elementos en una matriz y luego iterarlo para crear una lista

 import "./styles.css"; import React, { useState, useEffect } from "react"; export default function App() { const [todos, setTodos] = React.useState<any[]>([]); React.useEffect(() => { fetch(`https://web-coding-challenge.vercel.joyn.de/api/blocks`) .then((results) => results.json()) .then((data) => { const responseData = data.reduce((acc:any,curr:any)=>{ const assets = curr.assets; acc.push(...assets) return acc ; },[]) setTodos(responseData); }); }, []); return ( <div className="App"> {todos.map((post: any) => ( <div> <h1>{post.id}</h1> <h2>{post.primaryImage.url}</h2> </div> ))} </div> ); }

Captura de pantalla

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