Мне нужно выполнить поиск, когда пользователь перестает печатать. Я знаю, что должен использовать setTimeout(). Но с Reactjs Я не могу найти, как это работает. Может кто-нибудь скажет мне, как вызвать метод (который будет обрабатывать поиск), когда пользователь перестанет печатать на несколько секунд (предположим 5). Я не могу определить, где писать код, чтобы проверить, что пользователь прекратил печатать.Поиск в ответе, когда пользователь перестает печатать
import React, {Component, PropTypes} from 'react';
export default class SearchBox extends Component {
state={
name:" ",
}
changeName = (event) => {
this.setState({name: event.target.value});
}
sendToParent =() => {
this.props.searching(this.state.name);
}
render() {
return (
<div>
<input type="text" placeholder='Enter name you wish to Search.' onChange={this.changeName} />
</div>
);
}
}
Я хочу вызвать метод sendToParent, когда пользователь перестает печатать.
Ну они набрав в качестве входного элемента? Если это так, элементы ввода имеют атрибут «onKeyPress», который вызывается каждый раз, когда нажимает кнопку, пока этот вход выбран. Таким образом, вы можете использовать его так, чтобы таймаут запускался каждый раз, когда нажимал кнопку, но если они снова нажимают кнопку до истечения таймаута, он сбрасывает таймер. Если они не набрали для X времени, тайм-аут выполняет поиск. – Jayce444
Если вы имеете в виду фактический код, который выполняет проверку тайм-аута и проверку «прекратил печатать», то есть много примеров из них онлайн – Jayce444
. Мой метод не вызывает при использовании onkeyPress – shinite