以编程方式关闭反应选择菜单

时间:2018-12-06 21:58:53

标签: reactjs react-select

反应选择默认行为是在输入值为空时弹出菜单。我想修改此行为,以便当输入为空时,无论是在用户键入任何内容之前还是在用户退格以使其变为空状态之前,菜单都会关闭。

我找不到任何支持该行为的道具,因此我想通过调用一些函数来关闭onInputChange中的菜单,从而以编程方式实现此目的。像这样:

onInputChange={(inputValue) => {
      this.setState({
        inputValue,
      });
      this.selectRef.closeMenu();
    }}

我尝试在blur()引用上使用Select,但是它只是模糊了输入而没有关闭菜单,这绝对不是我想要的行为。

是否公开了可以满足我的需求的道具或功能?

1 个答案:

答案 0 :(得分:2)

您可以这样设置menuIsOpen道具onInputChange

handleInputChange = input => {
    this.setState({ open: !!input });
}

<Select
    onInputChange={this.handleInputChange}
    menuIsOpen={this.state.open}
/>