我有以下代码:
constructor(props) {
super(props);
this.state = {
search: "",
value: "",
username:'',
email:'',
password: '',
};
this.onChange = this.onChange.bind(this);
this.onSubmit = this.onSubmit.bind(this);
}
...
...
onChange(e) {
this.setState(
{[e.target.name]: e.target.value})
}
...
...
<input type="password" placeholder="Password"
onChange={e => this.onChange(e)}
value={ this.state.password }
/>
但是我无法在密码字段中输入。
如果我删除了value={ this.state.password }
部分,则可以在该字段中键入内容,但是当更改该字段时,状态似乎并没有得到更新。
出什么问题了?
答案 0 :(得分:5)
您忘记在密码字段中输入名称。应该是
<input
type="password"
placeholder="Password"
name="password"
onChange={e => this.onChange(e)}
value={ this.state.password }
/>
答案 1 :(得分:0)
或者说,您可以像这样将您的onChange更改:
onChange(e) {
this.setState(
{password: e.target.value})
}