在utils.js中封裝防抖方法
// 防抖
export const antiShake= (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)
}
}
在組件中使用
- 引入
import {antiShake} from 'utils.js'
- 方法中使用
addHandle:DebounceBy(function(){
//方法處理
},1000),
- 注意:如需使用箭頭函數(shù),請?zhí)幚砗胻his指向問題惯雳。