Так что я новичок в работе с компонентом typeahead и использую библиотеку реагировать на выбор и асинхронно выбираю предложенные параметры на основе введенных данных. Теперь давайте скажем, если я набрал "google", а теперь "google" может бытьвключено в предложенные опции или нет, и если я перейду к следующему полю формы, я потеряю значение типа "google".Должен ли я всегда нажимать на варианты?Может принять введенное значение, не нажимая на опции.Я попытался сделать это с помощью onBlur, но он очищает значение.
Ниже myCode:
// Form field using redux form
<Field>
name={FIELD_AUTO_COMPLETE}
component={renderCompanyNameTypeAhead}
text="text"
placeHolder="Company Name"
</Field>
И в моей функции без сохранения состояния:
const getOptions = () => async(input) => {
let response = await fetchApi.getOptions(input);
let dataRepsone = await response.json();
const arr = dataResponse.data;
if (arr) {
return arr.map( obj => {
const newObj = {};
newObj.label = obj.name;
newObj.value = obj.id;
return newObj;
});
}
};
const renderCompanyNameTypeAhead = (props) => {
const getOptions = loadOptions();
return (
<div>
<AysncSelect
{...props}
value={(props.input.value) ? props.input.value : props.selectedValue}
type={props.type}
label={props.label}
onChange={(value) => props.input.onChange(value)}
onBlur={() => props.onBlur(pros.input.value)}
loadOption={getOptions}
/>
</div>
)}