あなたが作成したものは、入力やその他のフォームの編集などのステートフルな「解決策」には定義できない純粋なステートレスコンポーネントです。
入力値が変更された場合、コンポーネントをstate
のクラスに変換して状態を更新する必要があります。
ステップ:
- クラスに変換(https://facebook.github.io/react/docs/state-and-lifecycle.html#converting-a-function-to-a-class)
- 入力に実際の値をレンダリング - >
<input ... value={this.state.values[i]} .../>
- 入力の変化のためのレジスタ - > this.updateInput(I、E)} `
- ボタンが親にローカル状態を送信しなければならない - >
<button ... onClick={() => this.props.saveChanges(b, this.state.values[i])
(i
はあなたの繰り返しの指標である、あなたは、例えば、_.forEach(biweeklyPays, (b, i) => { .... }
のためにあなたのfor
を変更することができます)
私はあなたがこれを達成するためにあなたは、このようなあなたのコンポーネントを初期化する必要があり、state
で入力値の配列を保つことを想定:
getInitialState: function() {
return { values: [] };
}
上記のonUpdateRowValue(i, e)
は、i
状態の第1要素を更新するに過ぎないものとします。
onUpdateRowValue: function(i, e) {
var values = this.values.slice(0);
values[i] = e.target.value
this.setState({values: values});
}