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

143
Vistas
Problema de almacenamiento de arreglo de React Hooks useState

Tengo el siguiente problema: tengo un método que devuelve una matriz multidimensional en mi componente Grids. Me gustaría almacenar cualquier matriz multidimensional recalculada en una lista separada. El problema es que cuando uso mi useState() declarado de esta manera

 const [listGrid,setListGrid] = useState<any[]>([])

solo el elemento de estado actual se guarda repetidamente en la lista de arreglos. Siga el código de la parte de interés:

 const [listGrid,setListGrid] = useState<any[]>([]); const grid= initGrid(); //initialise a new grid. const disableButtonHandler = ():void => { const cloneGrid =[...grid] console.log(cloneGrid===grid)//are no the same!! setListGrid(prevListGrid=>[...prevListGrid,cloneGrid]); };

esta es la instantánea de mi lista con las cuadrículas guardadas:

ingrese la descripción de la imagen aquí

entonces, básicamente, todas las matrices almacenadas en listGrid son iguales y me gustaría almacenar cualquier cambio de mi lista calculada.

¿Qué podría hacer mal con eso? gracias de antemano.

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

0

La matriz está representada por una matriz de matrices, mientras duplica la matriz contenedora, las contenidas siguen siendo las mismas. Básicamente, cloneGrid[i] === grid[i] es verdadero para 0 <= i < grid.length .

Puedes solucionar esto haciendo lo siguiente:

 const cloneGrid = grid.map(row => [...row]);
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