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

399
Vistas
React.js: cómo cambiar el valor del objeto dentro de una matriz de objetos

tengo un problema con la matriz de objetos que está dentro del estado. Mi pregunta es cómo cambiar el valor de un objeto como en el código de ejemplo a continuación

 const [theArrayOfObjects, setTheArrayOfObjects] = useState([ { color: "blue", shape: "square" }, { color: "red", shape: "circle" } ]);

lo que quiero es

 [ { color: "blue", shape: "square" }, { color: "red", shape: "rectangle" } ]

en resumen, solo quiero actualizar la matriz de objetos cambiando solo este valor específico

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

0

setTheArrayOfObjects([ { color: "blue", shape: "square" }, { color: "red", shape: "rectangle" } ] )

Si bien esto puede no ser exactamente lo que pediste, se ajusta a tus necesidades y es simple. Otras complicaciones, como iterar a través de cada elemento y encontrar un patrón para llegar a un elemento específico, pueden generar resultados inesperados.

Si no le gusta esto, entonces puede encontrar una estructura de estado diferente (un objeto en lugar de una matriz).

about 4 years ago · Juan Pablo Isaza Denunciar

0

Use una actualización de estado funcional para actualizar correctamente desde cualquier valor de estado anterior. Copie superficialmente cualquier parte del estado que esté actualizando. Recuerde que la función de actualización de estado useState no fusiona superficialmente sus actualizaciones, está devolviendo un valor de estado completamente nuevo.

Dado:

 const [theArrayOfObjects, setTheArrayOfObjects] = useState([ { color: "blue", shape: "square" }, { color: "red", shape: "circle" } ]);

Actualizar de la siguiente manera:

  • Asigne la matriz anterior a una nueva referencia de matriz
  • Copie superficialmente el elemento de matriz que desea actualizar, agregando las propiedades actualizadas

Ejemplo:

 const updateShape = (shape, index) => { setTheArrayOfObjects(state => state.map((el, i) => i === index ? { ...el, shape } : el, )); };

...

 updateShape("rectangle", 1);

Útil

Aunque es de Redux, la documentación de Patrones de actualización inmutables es increíblemente útil para explicar con más detalle lo que describí anteriormente y aún se aplica a las actualizaciones de estado estándar de React. Por favor, haz una lectura sin embargo.

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