以各自的状态存储每个输入的数据

时间:2019-07-07 03:38:08

标签: javascript reactjs

我有三个输入,并且我希望每个输入的数据都存储在一个状态中。例如,name输入应该以{{1​​}}状态存储,因为稍后需要它来将三个状态的值推送到Firebase数据库中。

我使用了name函数来存储数据,但是我不知道如何使每个输入的函数相对于要放入的状态。

onChange

2 个答案:

答案 0 :(得分:2)

您可以传递键和值

<input type="text" name="name" onChange={(event)=>this.handleChange(event,'name')} />

在您的函数中,您可以执行以下操作

handleChange = (e,key) => {
    this.setState({ [key] : e.target.value });
};

答案 1 :(得分:2)

getChanges = (e) => {
    console.log(e);
    this.setState({[e.target.name]: e.target.value}, function () {
        console.log(this.state)
    })
};

调用此函数,

<Input onChange={(e) => this.getChanges(e)} name={'name'}
                                    value={this.state.name} placeholder={'Name'}/>