#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)}
/>