react-select
только что обновлен до 2.0.0, так что результаты Google на первых трех страницах касаются более старых версий, даже официального документа , и ни одна из них не помогла.
MyПоле выбора может отображать все параметры правильно, но форма с избыточностью не будет принимать значение, с предупреждением: Warning: A component is changing a controlled input of type hidden to be uncontrolled.
Интересно, что я здесь пропустил ...
Компонент формы:
<Field
name="residentialAddress"
label = "Residential Address"
type="select"
component={AddressField}
validate={required}
/>
Компонент
export class AddressField extends Component {
searchAddress = input => {
let options = []
return myPromise(input)
.then(suggestions => {
options = suggestions.map(suggestion =>
({
label: suggestion.label,
data: suggestion.value
})
)
return options;
}
).catch(
error => {
return options = [{ label: "Auto fetching failed, please enter your address manually", value: "", isDisabled: true }];
}
);
};
render() {
const {
input,
label,
meta: { touched, error },
type
} = this.props;
return(
<FormGroup>
<ControlLabel>{label}</ControlLabel>
<Async
{...input}
placeholder={label}
isClearable={true}
getOptionValue={(option) => option.residentialAddress}
onChange = { value => input.onChange(value.data) }
loadOptions={this.searchAddress}
/>
{ touched && error && <span>{error}</span> }
</FormGroup>
)
}