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

243
Vistas
Use una variable para cambiar el nombre del objeto con el operador de propagación (Reactjs)

Soy bastante nuevo en reactjs y javascript, por lo que no estoy seguro de la sintaxis correcta.

Quiero usar el operador de propagación para actualizar un objeto, pero en lugar de codificar el nombre del campo, quiero que sea una variable, pero lo lee como un nombre de campo en lugar de tomar el valor de la variable como el nombre del campo.

Por ejemplo, Esta es mi variable:

 let [obj, setObj] = useState({'title': '', 'body': ''})

Lo actualizo así:

 const onChangeCallBack(field, value){ if(field === 'body'){ setObj(obj => ({...obj, 'body': value})) }else if(field === 'title'){ setObj(obj => ({...obj, 'title': value})) } }

Quiero actualizar algo como esto en su lugar:

 const onChangeCallBack(field, value){ setObj(obj => ({...obj, field: value})) // This doesn't work setObj(obj => ({...obj, {field}: value})) // This doesn't work either }

Entonces, ¿hay alguna manera de especificar que el campo es una variable para tomar su valor como el nombre de la variable?

about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

setObj(obj => ({...obj, [field]: value}))

Use corchetes para usar claves dinámicas.

about 4 years ago · Juan Pablo Isaza Denunciar

0

Debe envolver claves dinámicas con corchetes cuadrados de esta manera:

 { [myDynamicKey]: value }

Más sobre el tema aquí: Creación de objetos con claves dinámicas

about 4 years ago · Juan Pablo Isaza Denunciar
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