0
の値を更新していない私は、子コンポーネントのフィールドに値を渡しています:小道具状態
<Field key = {field.fieldName} fieldName = {field.fieldName} value = {field.value}
getModField={this._getModField.bind(this)} />
とフィールド状態では、小道具で更新する必要があります。私は、値が示されるべき
constructor(props){
super(props);
this.state = {
value: this.props.value,
fieldName: this.props.fieldName
};
}
更新します
<div className = "form-group" key = {this.props.fieldName} >
<input className="col-sm-2 control-label" name={this.props.value}
defaultValue={this.state.value} onChange={this._handleChange.bind(this)}
ref={(input) => this._value = input} />
</div>
が、フィールドのコンストラクタに次の行:: 別のフィールドで0 はvalue
を更新しません。フィールド名の変更のみがvalue
の変更をトリガし、私はそれがkey
小道具に何らかの形で関連だと思います。 ここで何が問題になりますか?
はい、状態を更新するのに役立ちましたが、入力フィールドの 'defaultValue = {this.state.value}'はまだ空のままです。 'fieldName'が – hasan
を変更したときに、' defaultValue'の代わりに 'initialValue'を渡す必要がある入力要素を更新するときだけ更新された値を取得します。 'fieldName'に基づいてキーを設定しているため、fieldNameが変更されたときに更新されるだけなので、コンポーネントが変更されます。 – lavish
Reactがエラーを返します: 'Unknown prop initialValue'。 – hasan