【发布时间】:2020-03-17 12:45:53
【问题描述】:
我有一个对象数组的状态,我想将选中的复选框 id 保存在里面。以
的形式[
{
name: 'Question 1',
checked: '1,2' // so 1 and 2 was checked
}
]
但是使用以下代码,当我取消选中复选框时,我的状态要么是空的对象数组,要么在数组中仅包含一个对象。
const { id, answer } = props.answers;
const [answers, setAnswers] = useState([{}]);
function handleChange(e) {
setAnswers([{ name: e.target.name, checked: e.target.value }]);
console.log(answers); // empty when i check checkbox, gets filled after unchecking
}
return (
<Answer>
<label>
<input
type="checkbox"
name={answer}
value={id}
defaultChecked={false}
onChange={handleChange}
/>
{answer}
</label>
</Answer>
);
}
【问题讨论】:
-
你能设置一个默认状态吗?
标签: javascript reactjs