【发布时间】:2015-05-21 19:09:29
【问题描述】:
我正在尝试debounce a function using Lodash,虽然它正在调用该函数,但它似乎根本没有去抖动它。我的问题似乎与我在其他地方看到的 on SO 或 Google 的错误不同(通常,他们没有调用 _.debounce 返回的函数)。
我目前的超简单实现如下(在 Angular 和 CoffeeScript 中):
s.search = -> _.debounce( s._makeSearchRequest, 1000 )()
s._makeSearchRequest = -> console.log("making search request")
在 JS 中,我认为是:
s.search = function() { _.debounce( s._makeSearchRequest, 1000 )() }
s._makeSearchRequest = function() { console.log("making search request") }
我通过在输入框中输入来运行s.search(),如果我很快输入胡言乱语,控制台会在每次按键时打印出“发出搜索请求”,每秒多次 - 表明它没有被完全消除了。
任何想法我做错了什么?
【问题讨论】:
标签: javascript angularjs coffeescript underscore.js lodash