0
我正在嘗試設置動態生成的輸入的狀態。最初任務對象,我想設置的新的狀態看起來像這樣:React - 對象分配多個動態輸入值
渲染方法:
render(){
return(
<div>
<main className="content">
<form onSubmit={this.onSubmit}>
<div>
{Object.keys(this.state.dataGoal).map((key, index) => {
return <div key={key}>
<label>{this.state.dataGoal[key]}</label>
<div className="input-wrap">
<input
type="text"
name={`${key}-task-${index}`}
value={this.state.tasks[key]}
onChange={this.handleInputChange} />
</div>
</div>;
})}
</div>
<div className="input-wrap">
<input
className="primary-btn"
type="submit"
value="Set my goal!"
onClick={this.formReset} />
</div>
</form>
</main>
</div>
);
}
,最後handleInputChanged函數:
handleInputChange = (e) => {
const value = e.target.value;
const name = e.target.name;
this.setState({
tasks: Object.assign({}, this.state.tasks, {[name]: value})
});
}
我想,當一個輸入改變設置對象的新狀態。所需的結果是獲取輸入值並將其設置爲名稱鍵值爲任務對象。
我也想問問輸入的名字是否必須是唯一的。
感謝您的幫助, 的Jakub
非常感謝你。你已經度過了我的一天。 :)我真的需要消化它。 –