Javascript 反应-如何使用handleInputChange函数更改状态值内的状态值?
我目前正在尝试使用一个输入字段来编辑状态值中的状态值。下面是一个州的例子Javascript 反应-如何使用handleInputChange函数更改状态值内的状态值?,javascript,reactjs,Javascript,Reactjs,我目前正在尝试使用一个输入字段来编辑状态值中的状态值。下面是一个州的例子 this.state = { modalDevice: { deviceName: "text" //this is what I want changed } } 下面是我的手柄输入更改功能: handleInputChange = (event) => { const { value, name } = event.target; this.setState(
this.state = {
modalDevice: {
deviceName: "text" //this is what I want changed
}
}
下面是我的手柄输入更改功能:
handleInputChange = (event) => {
const { value, name } = event.target;
this.setState({
[name]: value,
});
};
下面是我称之为的字段:
<TextField
label="Device Name"
value={this.state.modalDevice.deviceName}
name="deviceName"
variant="outlined"
required={true}
className="classes.textField"
style={{ width: 300 }}
onChange={this.handleModalInputChange}
InputLabelProps={{
classes: {
root: classes.cssLabel,
focused: classes.cssFocused,
},
}}
InputProps={{
classes: {
root: classes.cssOutlinedInput,
focused: classes.cssFocused,
notchedOutline: classes.notchedOutline,
input: classes.input,
},
}}
/>
如何执行此操作?您可以使用spread操作符跨旧状态信息进行复制,然后再使用新内容覆盖它:
this.setState({
...this.state,
modalDevice: {
...this.state.modalDevice
[name]: value,
},
});
您可以使用spread运算符跨旧状态信息进行复制,然后再使用新内容覆盖它:
this.setState({
...this.state,
modalDevice: {
...this.state.modalDevice
[name]: value,
},
});
宾果,我不知道这是一件事,很酷!非常感谢。宾果,我不知道这是一件事,很酷!非常感谢。