<!-- begin snippet: js hide: false console: true babel: false --> {allKanban.filter(item => { if (searchKanban === ""){ return item; } else if (item.kanbanNumber.toLowerCase().includes(searchKanban.toLowerCase())) { return item; } }) .map((item, i) => { return ( <TableRow key={i}> <TableCell align="center" {...register(`selectedKanbanList.${i}.kanbanId`, { value: item.kanbanId })} >{item.kanbanNumber}</TableCell> <TableCell align="center"> <Checkbox align="center" value={item.kanbanNumber} defaultChecked={item.isUsing} {...register(`selectedKanbanList.${i}.kanbanNumber`)} /> </TableCell> </TableRow> ) })}Como se mencionó anteriormente, el código intenta buscar Kanban en la lista que el tiempo seleccionó y eliminó el valor verificado predeterminado y mostró el valor no verificado. ¿Cómo puedo buscar elementos sin eliminar el valor marcado ya seleccionado en la casilla de verificación?
Sospecho que las cosas comenzarán a funcionar si usa ${item.kanbanId} en lugar de ${i} en las líneas con register . Probablemente desee conectar las cosas a un elemento específico en la matriz y no a la posición del elemento dentro de la matriz. La posición cambiará cuando filtre elementos.