Wpis z mikrobloga

Czy ktoś mi pomorze i powie gdzie robię błąd w #programowanie #react

Chce by chechbox brał wartości z tablicy obiektów, jednak za każdym zaznaczeniem obiektu zaznacza mi się tylko jedna wartość na true, reszta zostaje na false

function Checkboxcomponent({ data, error, index, eid }) {
const [checkState, setCheckedState] = useState([]);

const handleOnChange = (e, item, index) => {
const values = [...checkState];

let dates = checkState;

dates[index].bool = !dates[index].bool;

console.log(checkState);

setCheckedState([...dates]);

// console.log(updatecheckstate);
// console.log(id);

// setCheckedState(updatecheckstate);
// console.log(updatecheckstate);
};

useEffect(() => {
let filled = data?.map((e) => {
return { id: e._id, bool: false };
});

const tab = [
{ id: "6325fcd6cc625ed8ee12334b", bool: false },

{ id: "6325fdf6cc625ed8ee123350", bool: false },

{ id: "6325fdffcc625ed8ee123353", bool: false },
];
setCheckedState(tab);
}, []);

if (!data) {
return (

);
}

if (error) {
return (


);
}
return (
handleOnChange(e, eid, index)}
checked={checkState?.[index]?.bool}
id={promotion-${index}}
/>
);
}
  • 5
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach