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

136
Vistas
¿Cuáles son mis opciones para lidiar con este cierre obsoleto en React además de usar ref?

Estoy usando la biblioteca React Datasheet Grid, el componente principal tiene una propiedad llamada OnActiveCellChange , a la que paso mi función personalizada:

 const [selectedCell, setSelectedCell] = useState([]) ... function handleCellSelection({ cell }) { if(cell) { const {row, col} = cell; const newData = data[row][col]; if(!newData.unpickable) { console.log(selectedCell); // prints empty array setSelectedCell(selectedCell => [...selectedCell, newData.value]); } } } ... <DataSheetGrid className={'overwriteDisabledStyles'} value={data} onChange={setData} columns={columns} onActiveCellChange={handleCellSelection} headerRowHeight={false} gutterColumn={false} lockRows />

El problema es que deseo hacer algunas comprobaciones con la variable de estado "selectedCell", aunque logré actualizar el estado con el formulario funcional, no puedo acceder a la variable de estado. Logré usar la variable usando "useRef".

Quiero saber si puedo abordar el problema de alguna otra manera.

EDITAR:

Tratando de aclarar mi pregunta:

Lo que quiero es, dentro de la función handleCellSelection , hacer algunas comprobaciones antes de insertar newData usando setSelectedCell . Como buscar en la matriz de celdas selectedCell los valores existentes:

 const valueAlreadyExists = selectedCell.some((existingCell) => { return existingCell === newData.value });

Sin embargo, cuando se llama a la función handleCellSelection , el valor de selectedCell siempre es una matriz vacía. Deben ser los valores que se insertan en la matriz. Sé que hay valores allí porque cuando console.log fuera de handleCellSelection aparecen correctamente.

Entonces, logré acceder a ellos dentro de handleCellSelection usando useRef() pero lo que estoy buscando es otra opción para resolver esto.

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