如何解决 selectOptions.some is not a function while using AsyncCreatableSelect?

How to solve selectOptions.some is not a function while using AsyncCreatableSelect?

我正在使用 react-select 2.0 的 AsyncCreatableSelect 从 API 中获取选项,但是我一输入内容就面临以下错误 -

Creatable.js:126 Uncaught TypeError: selectOptions.some is not a function
    at isValidNewOption (Creatable.js:126)
    at Creatable.componentWillReceiveProps (Creatable.js:212)
    at callComponentWillReceiveProps (react-dom.development.js:13047)
    at updateClassInstance (react-dom.development.js:13260)
    at updateClassComponent (react-dom.development.js:14860)
    at beginWork (react-dom.development.js:15716)
    at performUnitOfWork (react-dom.development.js:18750)
    at workLoop (react-dom.development.js:18791)
    at HTMLUnknownElement.callCallback (react-dom.development.js:147)
    at Object.invokeGuardedCallbackDev (react-dom.development.js:196)
    at invokeGuardedCallback (react-dom.development.js:250)
    at replayUnitOfWork (react-dom.development.js:17998)
    at renderRoot (react-dom.development.js:18909)
    at performWorkOnRoot (react-dom.development.js:19812)
    at performWork (react-dom.development.js:19722)
    at performSyncWork (react-dom.development.js:19696)
    at requestWork (react-dom.development.js:19551)
    at scheduleWork (react-dom.development.js:19358)
    at Object.enqueueSetState (react-dom.development.js:12789)
    at Async.push../node_modules/react/cjs/react.development.js.Component.setState (react.development.js:354)
    at Async.js:168

这是我的组件的样子 -

<AsyncCreatableSelect
                name="search"
                value={this.state.search}
                styles={customStyles}
                placeholder={this.props.position+". Add Skill"}
                loadOptions={this.getOptions}
                onChange={this.updateValue}
                />

这是我为 loadOptions 调用的函数 -

getOptions(searchTerm){

        return fetch(`https://api.stackexchange.com/2.2/tags?order=desc&sort=popular&inname=${searchTerm}&filter=default&site=Whosebug`)
        .then(results=>{
            return results.json();
        }).then(data=>{
            let options=[]
            for(let i in data.items){
                options.push({
                    value:data.items[i].name,
                    label:data.items[i].name[0].toUpperCase()+data.items[i].name.substring(1).split('-').join(' ')
                })
            }
            //console.log(options)
            return {'options':options.slice(0,7)}
        })
}

我也在 git 回购中回答了,但如果它对其他人有帮助,也会在这里跟进。

loadOptions 是一个传递两个参数的函数:inputValue 和 callback。您需要第二个来解决承诺。

getOptions(searchTerm, callback){

       ...

        //console.log(options) 
        callback(options.slice(0, 7));
  })
}

如果有帮助,请告诉我。