У мене є простий компонент реагування з формою, яка, як я вважаю, має один керований вхід:
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