Javascript React Select-如何在发生更改之前获取表单的文本值?

Javascript React Select-如何在发生更改之前获取表单的文本值?,javascript,reactjs,react-select,Javascript,Reactjs,React Select,因此,我正在为我的一个网站制作搜索栏,我使用的一个组件,react select有点问题。下面是一些示例代码 const baseOptions = [ { label: 'Users', options: [ ] }, { label: 'Pages', options: [ ] }, { label: 'Search Google Index', value: 'search_go

因此,我正在为我的一个网站制作搜索栏,我使用的一个组件,react select有点问题。下面是一些示例代码

const baseOptions = [
      { label: 'Users', options: 
      [
      ]
      },
      { label: 'Pages', options: 
      [
      ]
      },
      { label: 'Search Google Index', value: 'search_google_index', type: "google_index" },
      { label: 'Search Bing Index', value: 'search_bing_index', disabled: 'yes' },
    ]

  handleSearchChange = selectedOption => {
    this.setState({
      selectedOption,
    }, () => {
    console.log(`Option selected:`, this.state.selectedOption);
    switch (this.state.selectedOption.type) {
      case "user":
      window.location = "/@" + this.state.selectedOption.label
        break;
      case "google_index":
      console.log("Searching google index");

            /*Here is where I need to catch the value of react-select*/

        break;
      default:
        break;
    }

    });
  };

问题 在选择新值之前,我不确定如何获取框中键入内容的值

目标 我的目标是,当用户选择“搜索谷歌索引”时,在谷歌搜索字段中键入的术语。

根据,要获得键入的值,您可以使用
onInputChange
道具,如下所示:

  handleInputChange = (inputValue) => {
        //get the character entered by user here in inputValue
  };
在组件调用中:

<Select
onInputChange={handleInputChange}

....

/>

更新:

建议:


您应该仅使用react select下拉列表来显示不用于搜索选项的用户列表。对于搜索选项,您可以有两个按钮。

什么“框”?在问题部分Yes,这是可行的,我确实在本地代码中包含了它,但是OnChange事件是我查找类型化值的地方。假设我输入“birds”,然后选择“Search Google Index”,那么该值现在更改为“Search Google Index”,在这里我需要检索“birds”一路上发送:)我不认为这是下拉菜单的目的,相反,你可以简单地使用一个文本框从用户那里获取输入,并使用两个按钮标记搜索谷歌索引和搜索必应索引。是的,但是你不能真正搜索用户列表,可以吗;)感谢您的帮助,如果我找到任何答案,我将继续查找并发回。如果您有一个列表要处理,那么您需要对用户列表使用react select,而不是搜索选项。要进行搜索,您需要有两个按钮。