¿Cómo puedo eliminar la clave dinámica y su valor del objeto reaccionar useState?
Tengo un objeto de elementos comprobados. Según la llamada a la función, quiero eliminar la clave dinámica y su valor del objeto:
const [checkedItems, setCheckedItems] = useState(null) const unCheckItem =(item) => { const {id} = item setCheckedItems(prevState) => ({ ...prevState // How should I remove that dynamic key which has the value of id? }) }¿Cómo puedo eliminar la clave dinámica que tiene el valor de id y también eliminar su valor?
Puede crear un asistente para eliminar la clave y usarla en el estado anterior, así:
const removeKey = (key, { [key]: _, ...rest }) => rest; ... ... setCheckedItems(prev => removeKey(id, prev));Puedes usarlo de esta manera, ¡funcionará al 100%!
let newObject = {}; for (let [key, value] of Object.entries(checkedItems)) { if (key != id) { newObject[key] = value; } } setCheckedItems(newObject);