Реагирует на входное значение

#reactjs #input

#reactjs #ввод

Вопрос:

Я хочу очистить входное значение (react-search-box) в фокусе. Значение ввода есть this.state.inputValue , есть функция clearInput2 , которая изменяет состояние this.state.inputValue , и оно определенно изменено, но на экране я все еще вижу не обновленное значение ввода. Я использую react-search-box. Как этого можно достичь?

   clearInput2(){
    this.setState({ inputValue: ""},()=>{console.log(this.state.inputValue)});
  }
  

реагирует-компонент окна поиска

        <ReactSearchBox 
        placeholder="Miasto, ulica"
        value={this.state.inputValue}
        data={this.state.data}
        onSelect={this.toMap}
        onClick={this.clearInput}
        onFocus={this.clearInput2}
        
      />
  

Ответ №1:

       <ReactSearchBox 
        placeholder="Miasto, ulica"
        value={this.state.inputValue}
        data={this.state.data}
        onSelect={this.toMap}
        onClick={this.clearInput}
        onFocus={() => {
          document.getElementsByClassName("jwfbbd")[0].value = ""
        }}
        
      />
  

Ответ №2:

      <ReactSearchBox
          placeholder="Miasto, ulica"
        value={this.state.inputValue}
        data={this.state.data}
        onSelect={this.toMap}
        onClick={this.clearInput}
        onFocus={() => {
        this.setState({ inputValue: ""},()=>{console.log(this.state.inputValue)})
          }}
          onChange={value => console.log(value)}
        />