【发布时间】:2017-03-27 23:25:08
【问题描述】:
我正在尝试在 2 个不同的反应类之间传递表单的输入值。下面的代码正在运行。用户在表单中输入他们的姓名,单击提交。他们跳转到一个新视图,他们输入的名称存储在状态中,可以作为道具检索。这行得通
<form onSubmit={this.handleClick}>
<input type="text" id="playerName" value={this.state.name} onChange={this.handleChange} placeholder="name" />
<input type="submit" value="submit" />
</form>
if (this.state.results){
output = <Decision name={this.state.value}/>;
}
handleChange: function(event){
this.setState({name: event.target.value})
},
我的问题是我想知道在表单中添加一个新的输入类型。这次email。
但是,我似乎无法用与我不断出错的逻辑相同的逻辑来复制它。
if (this.state.results){
output = <Decision name={this.state.value} email={this.state.value}/>;
}
我尝试添加一个新道具(上图),但是当我在名称字段中输入时,这也会在电子邮件字段中输入文本(可能是因为我正在更新相同的状态)。如何创建电子邮件道具并存储和检索其状态?
道具可以像email={this.state.email}一样简单吗?
【问题讨论】:
标签: javascript html forms reactjs state