Javascript 当我失去焦点或转到下一个字段时,react select清除键入的值
因此,我不熟悉react并使用react选择库处理typeahead组件,并基于键入的输入异步获取建议的选项。现在让我们假设,如果我输入了“google”,现在“google”可能包含在建议的选项中,或者不包含在建议的选项中,如果我转到下一个表单字段,我将丢失我的类型值“google”。我必须始终从选项中单击吗?无法接受键入的值,而无需单击“从选项”。我尝试使用onBlur执行此操作,但它清除了值 下面是myCode:Javascript 当我失去焦点或转到下一个字段时,react select清除键入的值,javascript,reactjs,redux,es6-class,react-select,Javascript,Reactjs,Redux,Es6 Class,React Select,因此,我不熟悉react并使用react选择库处理typeahead组件,并基于键入的输入异步获取建议的选项。现在让我们假设,如果我输入了“google”,现在“google”可能包含在建议的选项中,或者不包含在建议的选项中,如果我转到下一个表单字段,我将丢失我的类型值“google”。我必须始终从选项中单击吗?无法接受键入的值,而无需单击“从选项”。我尝试使用onBlur执行此操作,但它清除了值 下面是myCode: // Form field using redux form <
// Form field using redux form
<Field>
name={FIELD_AUTO_COMPLETE}
component={renderCompanyNameTypeAhead}
text="text"
placeHolder="Company Name"
</Field>
//使用redux表单的表单字段
名称={FIELD_AUTO_COMPLETE}
component={renderCompanyNameTypeAhead}
text=“text”
占位符=“公司名称”
在我的无状态函数中:
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>
)}
constgetoptions=()=>async(输入)=>{
let response=wait fetchApi.getOptions(输入);
让dataRepsone=wait response.json();
const arr=dataResponse.data;
如果(arr){
返回arr.map(obj=>{
const newObj={};
newObj.label=obj.name;
newObj.value=obj.id;
返回newObj;
});
}
};
const renderCompanyNameTypeAhead=(道具)=>{
const getOptions=loadOptions();
返回(
props.input.onChange(值)}
onBlur={()=>props.onBlur(pros.input.value)}
loadOption={getOptions}
/>
)}
我想这里有一个额外的大于符号(>):
更改为:
<AysncSelect
我想这里有一个额外的大于符号(>):
更改为:
<AysncSelect
请创建一个。@FrankerZ很抱歉在我看到你的评论时编辑了我的代码。请创建一个。@FrankerZ很抱歉在我看到你的评论时编辑了我的代码