无法在输入字段中输入

时间:2019-08-21 17:57:40

标签: reactjs

我有以下代码:

    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 }部分,则可以在该字段中键入内容,但是当更改该字段时,状态似乎并没有得到更新。

出什么问题了?

2 个答案:

答案 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})
}