reactjs - 在React-Select中获取选择的值

标签 reactjs react-select

我正在尝试实现 this example that obtains the user selected value, 但使用异步选择版本。

我想获取用户选择的值,但是浏览有关react-select的文档并不清楚该怎么做。如果您将 state 设置为等于 inputValue,则一旦单击“提交”按钮,inputValue 就会被清除。你回来了

""

而不是

用户选择的值

我不确定如何使用异步选择组件获取用户选择的值。我的 API 数据已成功填充和过滤建议框,但我不知道如何获取所选值。

我尝试了多种方法,最后尝试使用上面链接中的 refs 方法,但存储的值显示为空。而不是存储用户选择的值。 Here is the link to my broken codesandbox

有人可以帮助我或为我指明正确的方向吗?

编辑

Here is a link to a working demo如果将来有人陷入这个困境。

最佳答案

所以,你错了的是react-select的 Prop 在变化时获取值(value)。在 AsyncSelect 组件上使用 onChange 而不是 onInputChange。两种 Prop 都有不同的用途。这是可用于 react 选择的所有 Prop 的文档。 https://react-select.com/props 尝试下面的代码


textChange = inputValue => { // whole object of selected option 
    this.setState({ inputValue:inputValue.value });
};

render(){
....
        <AsyncSelect
          defaultOptions
          loadOptions={this.promiseOptions}
          onChange={this.textChange} /** onChange triggers only when user change the
           options but onInputChange triggers on each change which is for different
           purpose like for e.g. when user type, fetch similar options **/
          name="options"
        />
}




关于reactjs - 在React-Select中获取选择的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58003801/

相关文章:

javascript - 如何在useEffect中使用更新的值

javascript - 如何使用 jQuery.javascript 触发 react 选择输入下拉列表

javascript - 从事件获取文件时, typescript 对象可能为空

reactjs - 使用 React Redux mapStateToProps 的可重用组件

javascript - 按日期排序并进行比较,在 React 中返回错误的顺序

javascript - 类型错误 : Cannot read property 'measure' of undefined

javascript - react 选择中的默认值

javascript - 如果菜单在 react-select DropdownIndicator 处理程序中打开,则扣除

javascript - 在 react 选择中输入一个字符后,我可以使下拉菜单可见吗?

javascript - Promise.then 不是函数 - 在 React 中处理多个 API 调用