实现延迟搜索功能

搜索延迟

平常在项目中,经常会遇到搜索请求后台的情况,此时搜索延迟就显得尤为重要,如果没有搜索延迟功能,那么用户页面将会显得特别卡顿

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

以上就是一个最简单的搜索延迟功能的实现。有误之处还请指出。

[email protected]

相关文章

一、前言 在组件方面react和Vue一样的,核心思想玩的就是组件...
前言: 前段时间学习完react后,刚好就接到公司一个react项目...
前言: 最近收到组长通知我们项目组后面新开的项目准备统一技...
react 中的高阶组件主要是对于 hooks 之前的类组件来说的,如...
我们上一节了解了组件的更新机制,但是只是停留在表层上,例...
我们上一节了解了 react 的虚拟 dom 的格式,如何把虚拟 dom...