反应选择异步选项未显示

Sam*_*ook 5 javascript reactjs react-select

我有一个返回数据的 API 调用,我可以看到我以正确的方式返回选项,但由于某种原因,我无法让 React Select 显示选项。有什么我想念的吗?

searchGroups(searchString){
    if(!searchString) return Promise.resolve({ options: [] });
    UserGroups.getUserGroups(searchString).then((res) => {
      let groups = [];
      groups = res.groups.map((d) => ({
        value: d.group_ID,
        label: d.group_name
      }))
      return {options: groups};
    }, (e) => {
      this.setState({
        searchError: e.message
      })
    })
  }
Run Code Online (Sandbox Code Playgroud)

从我可以看到的groups数组是(在搜索时)返回为

[
    {value: 1, label: "Admins"}
    {value: 22, label: "Asset Group"}
    {value: 2, label: "Read-only"}
]
Run Code Online (Sandbox Code Playgroud)

但是,搜索框会因“正在加载...”消息而暂停,而加载微调器会保持不变。我可以看到 API 已返回,但未显示任何选项。

这就是我如何实施Select我缺少的选项吗?我都试过valueKey,labelKey但都不适合我。

<Select.Async
      multi={true}
      onChange={this.onChange}
      loadOptions={this.searchGroups}
      value={this.state.value}
 />
Run Code Online (Sandbox Code Playgroud)

我确定这是我返回数据的方式,但不确定这是哪里出了问题以及我需要纠正什么格式。任何帮助将不胜感激。

Obl*_*sys 1

问题是return之前失踪了UserGroups.getUserGroups(..。这导致异步代码被执行并显示在网络日志中,但结果不会到达Select.Async. 如果调用returnsreact-select时会给出错误,那就太好了,但在这种情况下,它假设将使用回调来提供结果。loadOptionsundefined