美文网首页
vue防止用户操作事件过于频繁

vue防止用户操作事件过于频繁

作者: Mcarrot | 来源:发表于2019-03-23 07:20 被阅读0次

比如v-touch的滑动切换

<v-touch 
     class="touch" 
     v-on:swipeup="flag && onSwipeUp()"
     v-on:swipedown="flag && onSwipeDown()">
     <transition
      mode="out-in"
      :enter-active-class="animatedIn"
      :leave-active-class="animatedOut"
      :duration="{enter:800, leave:300}">
      
      <router-view></router-view>
      
      </transition>
</v-touch>
data() {
  flag: true, // 用于控制点击切换页面后延时内是否可以点击(1.3s)
  timerID: null, // 定时器
}

给事件绑定一个flag(默认为true)

// 上划事件
onSwipeUp() {
this.flag = false;
      this.timerID = setTimeout(function () {

        that.flag = true 
      },1000)
},

// 清除定时器
destroyed () {
  clearTimeout(this.timerID)
},

// 在页面挂载的时候把定时器清除
mounted() {
  this.destroyed ()
},

相关文章

网友评论

      本文标题:vue防止用户操作事件过于频繁

      本文链接:https://www.haomeiwen.com/subject/kikrvqtx.html