私は、1つの制御された入力があると私が信じる形式の単純な反応コンポーネントを持っています:
import React from 'react';
export default class MyForm extends React.Component {
constructor(props) {
super(props);
this.state = {}
}
render() {
return (
<form className="add-support-staff-form">
<input name="name" type="text" value={this.state.name} onChange={this.onFieldChange('name').bind(this)}/>
</form>
)
}
onFieldChange(fieldName) {
return function (event) {
this.setState({[fieldName]: event.target.value});
}
}
}
export default MyForm;
アプリケーションを実行すると、次の警告が表示されます。
警告:MyFormは、制御対象のテキストタイプの非制御入力を変更しています。入力要素は、非制御から制御(またはその逆)に切り替えないでください。コンポーネントの存続期間中、制御された入力要素と制御されていない入力要素のどちらを使用するかを決定する
入力には値があるため、入力は制御されていると思います。私は何が間違っているのでしょうか?
React 15.1.0を使用しています