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

252
Vistas
¿Cómo reasignar un valor de una clave en un diccionario de javascript para onChange de una etiqueta TextField?

Este es el esquema de mi modelo:

 const workoutSchema = mongoose.Schema({ workouts: [ { workoutName: String, sets: Number, reps: Number, weight: Number, }, ], });

Este es el postData que es referencia en el campo de texto a continuación.

 const [postData, setPostData] = useState({ workouts: [{ workoutName: "", sets: "", reps: "", weight: "" }], });

para acceder al nombre de entrenamiento anterior, a continuación he establecido el valor en postData.workouts["workoutName"] parece funcionar pero no estoy seguro. Tengo problemas con la propiedad onChange , específicamente con el segundo argumento en setPostData [workoutName]: e.target.value . Tengo problemas para acceder a la workoutName de nombre de entrenamiento dentro del diccionario de entrenamientos del esquema.

 <TextField label="Workout" variant="outlined" value={postData.workouts["workoutName"]} onChange={(e) => setPostData({ ...postData, workoutName: e.target.value }) }

workouts["workoutName"]: e.target.value pero aparece un error de sintaxis antes del paréntesis que dice que estaba esperando un , . imagen de error También probé workouts.workoutName : e.target.value como en otros idiomas, pero no funcionó. ¿Cómo puedo acceder al nombre de entrenamiento en el objeto de entrenamientos para reasignarlo al valor escrito en el campo de texto (es decir, e.target.value ).

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

0

postData es un objeto

entrenamientos es una propiedad de este objeto

el nombre del entrenamiento es una propiedad dentro de una matriz que es una propiedad de los entrenamientos

Entonces, para cambiar el nombre del entrenamiento, debe hacer lo siguiente:

 {...postData, workouts: [{...postData.workouts[0], workoutName: e.target.value}]}

Para leer el nombre del entrenamiento necesitas hacer:

 postData.workouts[0].name
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