阻止重复提交

// 阻止按钮重复提交
import Vue from 'vue'
Vue.directive('stopBtnRepeat', {
    
    
  bind: function (el, binding) {
    
    
    function clickHandler(e) {
    
    
      if (el.contains(e.target)) {
    
    
        if (!el.disabled) {
    
    
          el.disabled = true
          setTimeout(() => {
    
    
            el.disabled = false
          }, binding.value || 1000)
        }
        return false
      }
    }
    el.bffClick = clickHandler
    document.addEventListener('click', clickHandler)
  },
  unbind(el) {
    
    
    document.removeEventListener('click', el.bffClick)
    delete el.bffClick
  },
})
main.js 引入 import './api/stopBtnRepeat.js'
<span class="text" v-stopBtnRepeat='2000'
                @click="addList(scope.row)">提交</span>


猜你喜欢

转载自blog.csdn.net/weixin_46210850/article/details/119040922