阻止方法重复触发的方案

有的时候短时间内重复触发一个方法会出问题,包括视觉效果和逻辑上的

解决方案也很简单,比如在vue中,可以设置一个callFlag来辅助判断

data(){
  return{
    callFlag:0  
}
methods:{
  testFunction(){
    if(this.callFlag === 0){
      this.callFlag = 1 //标记为1
      ...//执行函数
      setTimeout(()=>{
          this.callFlag = 0 //3秒后恢复标记0
      },3000)
    }else{
      return    
    }
  }
}

这样处理就可以防止在3秒内重复执行某方法啦

你可能感兴趣的:(阻止方法重复触发的方案)