Entonces, estoy tratando de modificar un objeto que recibo a través de API con más información, así:
useEffect(async () => { setPedidos(await getPedidos()); //Get initial data from api }, []); useEffect(async () => { //gets triggered when 'pedidos' is modified if (pedidos.length > 0) { console.log('example from original obj:', pedidos[0]) let obj = [...pedidos] //copies contents of 'pedidos' to a new list pedidos.forEach(async (item, index) => { obj[index].cliente = await getCliente(obj[index].cliente) //updates 'cliente' }) console.log('log 1', obj) //logs wrole obj. Shows updated info as expected console.log('log 2', obj[0]) //Logs first in set. Shows original info } }, [pedidos]);Registros Cuando más tarde intento acceder a nueva información, aparece el mensaje 'no se pueden leer las propiedades de undefined'.
Realmente no he intentado mucho ya que no tengo idea de qué hacer. No hay ninguna razón para que el nuevo objeto cambie en absoluto ya que 'let obj = [...pedidos]' hace una copia del objeto original, según tengo entendido.