vue实现按钮防抖

常用的表单提交中,如果不做按钮loading的处理,就需要给按钮配置防抖操作。

废话不多说,上代码:

第一步,以下代码写到工具类里面;

// 防抖
export const DebounceBy = (fn, t) => {
  let delay = t || 500
  let timer
  return function () {
    let args = arguments;
    if (timer) {
      clearTimeout(timer)
    }

    let callNow = !timer

    timer = setTimeout(() => {
      timer = null
    }, delay)

    if (callNow) fn.apply(this, args)
  }
}

第二步:在需要用到的地方,引入:

第三步,在method的方法里面直接使用

agree:DebounceBy(function(value){
/*写你自己的业务代码*/
},3000)

 

完毕

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章