首页
Preview

解决 debounce 防抖函数无效

当我们在input事件上直接调用debounce防抖是生效的,但当我们在函数内部调debounce就会发现我们的抖动失效了,代码如下:

错误写法

$el.on('keyup'), function(){
   _.debounce(doYourThing,500); // 防抖不生效
}

正确写法

var doYourThingDebounced = _.debounce(doYourThing, 500); 

// 写法1:
$el.on('keyup', ()=>{
    // 一些其他逻辑
    doYourThingDebounced()
});
// 写法2:
$el.on('keyup',  doYourThingDebounced);

// 写法3:

$el.on('keyup', _.debounce(doYourThing, 500));

版权声明:本文内容由TeHub注册用户自发贡献,版权归原作者所有,TeHub社区不拥有其著作权,亦不承担相应法律责任。 如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

点赞(0)
收藏(0)
秋风
全栈工程师

评论(0)

添加评论