Mi promesa devuelve un JSON como este:
'[ {"amazing data": "hello", "amazing again": "yep"}, {"amazing data": "hello", "amazing again": "yep"}]'Me gustaría devolver una matriz de objetos:
[ {"amazing data": "hello", "amazing again": "yep"}, {"amazing data": "hello", "amazing again": "yep"} ]Me gustaría acceder a él de esta manera porque puedo trabajar con reduce después de que regrese la promesa.
Mi código:
const amazingPromise = await getData().then((data) => { return data }) const prodArray = Array.from(amazingPromise.reduce((acc, o) => { Object.entries(o) .forEach(([k, v]) => { if(!acc.has(k)) acc.set(k, [k]) acc.get(k).push(Array.isArray(v) ? v.join(' | ') : v) }) return acc }, new Map()).values())Cualquier ayuda será genial. Gracias.
Si su proyecto es un proyecto web, puede usar react.State() para resolver esto. Por ejemplo, en mis proyectos, uso el estado para guardar los resultados de una solicitud de API como su ejemplo.
const App = ()=>{ const[array, setArray] = useState([]); //Init the array as a empty array useEffect( ()=>{ const RequestAPI = async ()=>{ const URL = "https://..."; const response = await fetch(URL); const newArray = await response.json(); setArray(newArray); }; RequestAPI(); },[]); return ( {array.map(item => <ComponentItem /> ) } }Intente usar algo similar a las funciones de estado y asíncronas en su proyecto como sea posible