每次输入字段更改时都会调用 updateList 函数,接收事件作为参数。对于输入字段更改频率超过 1000 毫秒的情况,如何在 updateList 中重置 reqFn 请求间隔?
updateList = (e) => {
let query = e.target.value;
let reqFn = function(){
axios.get(`https://typeahead-js-twitter-api-proxy.herokuapp.com/demo/search?q=${query}`)
.then((response) => {
//console.log(response);
let getRq = this.props.onUpdateList.bind(this, response.data);
getRq(); // or: //this.props.onUpdateList(response.data);
})
.catch((error) => {
console.log(error);
});
}.bind(this);
setTimeout(reqFn, 1000);
}
试图实现类似的行为: https ://twitter.github.io/typeahead.js/