【发布时间】:2021-10-23 19:29:52
【问题描述】:
我有一个包含多个字段的表单。
为了处理我使用受控组件的状态。
我使用的方法如下所示。
这最初可以工作,但随着需求的变化,我不得不使用嵌套对象来定义初始状态。handleChange 不再正常工作。
我怎样才能为嵌套对象实现相同的结果。
const [details, setDetails] = useState({
description: null,
platform: "Xbox",
region: "ASIA",
time:{
start: "2017-05-24T10:30",
end: "2017-05-28T10:30",
},
contact: {
email: "",
phone: "",
twitter: "",
discord: "",
}
});
function handleChange(evt) {
const value = evt.target.value;
setDetails({
...details,
[evt.target.name]: value,
});
}
示例组件
<TextField
label="Description"
onChange={handleChange}
name="description"
value={details.description}
/>
<TextField
label="email"
onChange={handleChange}
name="email"
value={details.contact.email}
/>
【问题讨论】:
标签: reactjs use-state react-state-management