反应选择异步

时间:2020-10-23 15:24:46

标签: reactjs asynchronous react-select

我正在尝试使用React Select Async(https://react-select.com/home#async)有条件地传递选项,但没有成功。像这样:

AsyncSelect

关注CodeSandbox链接: CodeSandbox

请帮我吗?

非常感谢您

1 个答案:

答案 0 :(得分:0)

根据文档here,您需要让'defaultOptions'和'loadOptions'期望一个承诺。

  1. 添加defaultOptionsloadOptions={loadOptions}

    <AsyncSelect
       cacheOptions
       loadOptions={loadOptions}
       defaultOptions
       onInputChange={this.handleInputChange}
     />
    
  2. loadOptions函数中添加条件

    const loadOptions = (inputValue, callback) => {
      setTimeout(() => {
        if (conditionally === 0) {
          callback(filterColors(inputValue));
        } else return {};
      }, 1000);
    };
    

Codesandbox