vue按钮防止连续点击

main.js创建自定义指令:

Vue.directive('throttle',{
  inserted(el,binding){
    el.addEventListener('click',()=>{
      el.style.pointerEvents='none';
      if(!el.disabled){
        setTimeout(()=>{
          el.style.pointerEvents='auto'
        },binding.value||300)
      }
    })
  }
})

按钮属性中添加v-throttle,默认300毫秒,可自定义时间:v-throttle="自定义时间"

posted @ 2022-04-01 15:56  年轻浅识  阅读(582)  评论(0编辑  收藏  举报