Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

148
Views
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
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!