vue节流实现

vue节流实现

创建点击事件

<el-button @click="debounce">debounce</el-button>

如果按照传统js写法:

debounce(){
      var flag = 1 
        if(flag === 1){
          flag = 0
          console.log('flag = ' + flag)
        }
    }

此时由于每次的点击时,都会调用一次debounce方法,所以还是会不停打印flag,无法实现节流。

所以需要在data中创建flag
vue节流实现
debounce:

debounce(){
      if(this.flag){
        this.flag = false
        console.log('flag =' + this.flag)
        setTimeout(()=>{
        this.flag = true
      },1000)
      }

节流实现

上一篇:搜索框单独组件


下一篇:函数防抖