事件防抖

在项目中,频繁点击事件会添加重复数据,这样需要添加事件防抖,不管频繁点击多少次,控制1s中执行一次。代码如下:

// 事件防抖
debounce(method, context) {
    clearTimeout(method.tId);
    method.tId = setTimeout(() => {
        method.call(context);
    }, 1000);
},
addEvent: _debounce(function(_type, index, item) {
    this.eventlist.push({ a: this.eventlist.length + 1, b: true, c: '' })
    setTimeout(() => {
        this.initQueryBuilder(this.eventlist.length)
    }, 500)
}, 800),

 

 

这里是事件防抖和节流的链接,我也是根据这个链接,第一次使用,分享一下:

https://github.com/Advanced-Frontend/Daily-Interview-Question/issues/5

你可能感兴趣的:(事件防抖)