實現延遲搜尋功能

jimwmg發表於2017-07-28

搜尋延遲

平常在專案中,經常會遇到搜尋請求後臺的情況,此時搜尋延遲就顯得尤為重要,如果沒有搜尋延遲功能,那麼使用者頁面將會顯得特別卡頓

import {Component} from `react`
class Search extends Component{
  constructor(props){
    this.state({delay:0});
    this.onSearch = this.onSearch.bind(this);
  }
  onSearch(){
    this.setState({delay:this.state.delay + 1})
    let _this = this ;
    setTimeout(function(){
      _this.setState({delay:_this.state.delay - 1});
      if(this.state.delay == 0){
            //執行後臺請求的程式碼
            console.log(`請求執行了`)
          }
      }
    },1000)
}
  render(){
    return (
        <div>
              <input onChange={this.onSearch}/>
      </div>
    )
  }
}
export default Search

以上就是一個最簡單的搜尋延遲功能的實現。有誤之處還請指出。

jimwmg@foxmail.com

相關文章