vue节流实现

vue节流实现创建点击事件el-button @click=debouncedebounce/el-button如果按照传统js写法:debounce(){var flag = 1 if(flag === 1){flag = 0console.log(flag = + flag)}}此时由于每次的点击时,都会调...

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

debounce:

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

节流实现

本文标题为:vue节流实现

基础教程推荐