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

117
Vistas
reaccionar actualizar matriz de objeto con campo marcado en estado
const data = [ { id: "1", checked: false, }, { id: "2", checked: false, }, { id: "3", checked: false, }, { id: "4", checked: false, }, ];
 const [state, setState] = useState(data) {state.map((item, index) => ( <div key={index}> <input checked={item.checked} type="checkbox" /> <span>{item}</span> </div> ))}

¿Cómo podría actualizar lo marcado cada vez que las casillas de verificación están marcadas y desmarcadas?

Algunos ejemplos, pero me gustaría que los items checked are fueran una matriz como [{id: "1", marcado: verdadero,}, {id: "2", marcado: verdadero,}];

ingrese la descripción de la imagen aquí ingrese la descripción de la imagen aquí

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

0

Puede agregar onClick a la input y actualizar sus datos de estado en función del elemento seleccionado.

 const handleChange = (id) => { const clonedData = [...state]; setState( clonedData.map((d) => (d.id === id ? { ...d, checked: !d.checked } : d)) ); }; //// Your remaining code <input checked={item.checked} type="checkbox" onClick={() => handleChange(item.id)} />;

Se adjunta una caja de arena para referencia.

Editar esperanzador-bush-qpwsye

about 4 years ago · Juan Pablo Isaza Denunciar

0

Dados los data que nos proporcionó como el state , puede crear una copia del estado y alternar el que ha activado para verificar.

 const [state, setState] = useState(data) const handleChange = (id) = { const newState = state.map(item => item.id === id? {...item, state: !item.checked} : item) setState(newState) } {state.map((item, index) => ( <div key={index}> <input checked={item.checked} type="checkbox" onChange={(e) => handleChange(item.id)}/> <span>{item}</span> </div> ))}
about 4 years ago · Juan Pablo Isaza Denunciar

0

Puede crear una nueva función y, al cambiar, actualizar el estado anterior

 export default function App() { const data = [ { id: '1', checked: false, }, { id: '2', checked: false, }, { id: '3', checked: false, }, { id: '4', checked: false, }, ]; const [state, setState] = React.useState(data); function updateState(id) { const newVal = state.map((item) => { if (item.id === id) { return { ...item, checked: !item.checked, }; } else { return { ...item, }; } }); setState(newVal); } return ( <div> {state.map((item, index) => ( <div key={index}> <input checked={item.checked} type="checkbox" onChange={() => updateState(item.id)} /> <span>{item.id}</span> </div> ))} </div> ); }
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