ReactJS复选框如果值在数组



如何使复选框输入在reactjs检查,如果值包含在一个数组?
我试图过滤数组内检查的道具,但仍然不工作

const [productForm, setProductForm] = useState({
sizes: ["41", "42", "43"],
});
[40, 41, 42, 43, 44, 45].map((size, index) => (
<div className="col-2" key={index}>
<div className="form-group">
<div className="form-check form-check-inline">
<label className="form-check-label">
<input type="checkbox" className="form-check-input" name="sizes" value={size} onChange={e => handleCheckBox(e)} checked={productForm.sizes.includes(size)} />
<i className="input-helper"></i>
{size}
</label>
</div>
</div>
</div>
))

您的逻辑是正确的,但您正在寻找字符串数组中的数字:

["40", "41", "42"].includes(40) // false
[40, 41, 42].includes("40") // false
[40, 41, 42].includes(Number("40")) // true

相关内容

最新更新