I have an array by default with all the checkbox status as true.
let initialarray = [{name: 'Approved', isChecked: true},
{name: 'Rejected', isChecked: true},
{name: 'Pending', isChecked: true},
{name: 'Cancelled', isChecked: true}]
All the checkboxes are selected, As I set checked to true
When I try to uncheck the approved status I can able to update the respective Object
checked status to false.
My OnChange Function looks like Below
const onChange = (e) => {
const updatedStatus = initialarray.map((item) =>
item.name === e.target.name
? { ...item, isChecked: e.target.checked }
: item
);
};
updatedstatus= [{name: 'Approved', isChecked: false},
{name: 'Rejected', isChecked: true},
{name: 'Pending', isChecked: true},
{name: 'Cancelled', isChecked: true}]
When I try to uncheck the Rejected name, I am able to update on the rejected status object but the Approved name status again changing to true.
updatedstatus= [{name: 'Approved', isChecked: true},
{name: 'Rejected', isChecked: false},
{name: 'Pending', isChecked: true},
{name: 'Cancelled', isChecked: true}]
Latest Updated status only I can able to change. other status it was resetting to true
Expected:
expected= [{name: 'Approved', isChecked: false},
{name: 'Rejected', isChecked: false},
{name: 'Pending', isChecked: true},
{name: 'Cancelled', isChecked: true}]