【发布时间】:2018-10-02 16:52:46
【问题描述】:
当我单击按钮上的提交时,只有 1 个值被提交给对象,而不是两个。我已经计算出状态会正确更新,直到按下提交按钮并且只有 1 个值提交到 obj 中。
我使用过的功能如下:
onChange = (event) => {
this.setState({ term: {term1: event.target.value }});
}
onChange2 = (event) => {
this.setState({ term: {term2: event.target.value }});
}
onSubmit = (event) => {
event.preventDefault();
let obj = {
result1: this.state.term.term1,
result2: this.state.term.term2,
};
{console.log('obj', obj)}
this.setState({
term: {
term1: '',
term2: ''
},
items: [...this.state.items, obj]
});
}
我使用的渲染如下:
render() {
return (
<div>
<form onSubmit={this.onSubmit}>
<input value={this.state.term.term1} onChange={this.onChange} />
<input value={this.state.term.term2} onChange={this.onChange2} />
<button>Submit</button>
</form>
<List items={this.state.items} />
</div>
);
}
我的状态结构如下:
this.state = {
term: {
term1: '',
term2: ''
},
items: []
};
任何帮助都会很棒!谢谢!
【问题讨论】:
-
我刚刚在帖子中编辑了这个:)
标签: javascript reactjs forms