Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

147
Vistas
cómo fusionar objetos dinámicos anidados

Tengo un método onChange como este:

 handleChange(e, fieldName, fieldType, index, parentEle) {}

dentro de esto, estoy tratando de almacenar el valor en un objeto global llamado nestedObj mis parámetros son dinámicos

estructura de objeto esperada:

 [parentEle]: {[index]: {[fieldName]: e.target.value}}

así que después de cada onChange mi objeto será algo como esto:

 fruit: {0: {fruitName: 'apple'}} fruit: {0: {fruitId: 123}} fruit: {1: {fruitName: 'orange'}} fruit: {1: {fruitId: 456}} car: {0: {carName: 'bmw'}} car: {0: {carId: 789}} car: {1: {carName: 'audi'}} car: {1: {carId: 101}}

como los campos son dinámicos, esto es lo que estoy haciendo:

 const eachValue = { [index]: { [fieldName]: e.target.value } }; if (nestedObj?.[parentEle]?.[index]) { nestedObj[parentEle][index] = Object.assign( {}, nestedObj[parentEle][index], eachValue[index] ); } else { nestedObj[parentEle] = eachValue; }

entonces lo que estoy recibiendo es esto:

 { fruit: {1: {fruitName: 'orange', fruitId: 456}} car: {1: {carName: 'audi', fruitId: 101}} }

así que estoy cometiendo el error de otra parte al asignar cada valor al objeto reemplazando directamente el elemento anterior

lo que espero es:

 { fruit: [{0: {fruitName: 'apple', fruitId: 123}, {1: {fruitName: 'orange', fruitId: 456}] car: [{0: {carName: 'bmw', fruitId: 789}, {1: {carName: 'audi', fruitId: 101}] }

¿Puedes por favor guiarme cómo lograr esto?

about 4 years ago · Juan Pablo Isaza
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda