reactjs 从多个复选框组中取消选中react中的复选框(我使用的是React钩子)

ecbunoof  于 2023-02-12  发布在  React
关注(0)|答案(1)|浏览(321)

我在几个复选框组中运行了几个复选框。我不知道如何取消选中某个复选框(从而改变状态)。出于某种原因,我无法访问e.target.checked

<Checkbox
      size="small"
      name={item}
      value={item}
      checked={checkboxvalues.includes(item)}
      onChange={(e) => handleOnChange(e)}
  />

我的职责

const handleOnChange = (e) => {
   const check = e.target.checked;
   setChecked(!check);
};

我在this sandbox中制作了一个组件的工作示例。感谢您的帮助

dba5bblo

dba5bblo1#

最好的方法是将选中的复选框保存到一个状态数组中,因此要选中或取消选中它,只需根据需要唯一的复选框值属性过滤此状态数组。
尝试在checkbox属性checked上使用array.some()。要删除它,只需过滤状态数组中设置的与该复选框值不同的复选框。

相关问题