const fetchFavSchemas = schemas => { return new Promise((resolve, reject) => { schemas = schemas.map(e => { try { axios .get(`MY_URL`) .then( res => res.data // i want to return this << res.data >> object // for every element in the array. ); } catch (error) { console.log(error); reject(error); } }); resolve(schemas); }); }; const getFavoritSchemas = () => { fetchFavSchemas([7, 8]).then(res => console.log(res)); };// Espero devolver una matriz de matrices [[],[]]. // pero obtengo una matriz en indefinidos [indefinido, indefinido]
También cuando quiero trabajar con useState hook y establecer el estado en cada elemento de la matriz, pero obtengo el valor inicial. Hice una búsqueda en useState y creo que no se vuelve a renderizar en el mismo evento y tengo que hacer otro activador para obtener el estado actual. // por favor que alguien me ayude a lograr lo que quiero hacer. // también ayúdame a entender cómo obtener el estado actual en useState inmediatamente después de cambiarlo (en el mismo clic).
const [favSchemas, setFavSchemas] = useState([]); const fetchFavSchemas = schemas => { return new Promise((resolve, reject) => { schemas.map(e => { try { axios .get(`MY_URL`) .then(res => setFavSchemas(prev => [...prev, ...res.data])); } catch (error) { console.log(error); reject(error); } }); resolve(); }); }; const getFavoritSchemas = () => { fetchFavSchemas([7, 8]).then(res => console.log(favSchemas)); }; //////////////////