我正在使用AsyncSelect
中的react-select
来异步填充选项列表。
我想要这样,所以当您选择一个选项并单击输入时,您可以继续编辑选择。
当前,单击输入不允许您编辑当前选择,而是可以进行全新的搜索。
我查看了react-select
github上的问题并发现了
https://github.com/JedWatson/react-select/issues/1868 https://github.com/JedWatson/react-select/issues/1558
但是,这些修复程序不适用于AsyncSelect
。
handleFocus = element => {
if (this.state.value) {
// This works for regular Select but not Async
this.select.state.inputValue = this.state.value.label;
}
};
render() {
const { isLoading, options, value } = this.state;
return (
<Async
ref={ref => {
this.select = ref;
}}
isClearable
blurInputOnSelect={true}
isDisabled={isLoading}
isLoading={isLoading}
onChange={this.handleChange}
onCreateOption={this.handleCreate}
onMenuClose={this.handleMenuClose}
onFocus={this.handleFocus}
loadOptions={this.getOptions}
value={value}
/>
);
}
这是CodeSandbox,其修复程序适用于Select
,但不适用于Aysnc
有人有什么建议吗?将不胜感激。