0
我有一個表格,在響應」使用單一handleInputChange方法對多個輸入字段(反應)
render() {
return (
<div>
<form onSubmit={this.onFormSubmit}>
<input
value={this.state.first}
/>
<input
value={this.state.second}
/>
<input
value={this.state.third}
/>
//.... many more
</form>
//...
)}
我handleInputChange
通常是這樣的:
handleInputChange(e) {
this.setState({value: e.target.value });
}
現在,因爲我有許多不同的輸入字段,我通常會做很多不同的handleInputChange
方法。但是,所有這些處理輸入更改的東西基本上都是相同的:它們根據當前正在編輯哪個輸入字段重新設置狀態
怎麼會的我,而不是寫三種handleInputChange
方法都做這樣的事情:
handleInputChangeFirst(e) {
this.setState({first: e.target.value });
}
handleInputChangeSecond(e) {
this.setState({second: e.target.value });
}
...做到這一切與一個單一的handleInputChange
,需要然後檢查其值更新?我如何讓handleInputChange
知道正在編輯的輸入字段並作出相應的反應?
我也不敢給我'handleInputChange'事件了呢? –
這個'handleInputChange'返回一個函數,它將事件作爲唯一的參數。它基本上是一個處理程序的工廠。 –
有趣!爲什麼我必須這樣改變它,或者你爲什麼決定這樣做? –