【问题标题】:Lodash debounce not workingLodash去抖不起作用
【发布时间】:2017-03-26 19:40:59
【问题描述】:

const { debounce } = require('lodash');

debounce(
   () => {
     console.log('testing..');
   },
  1000,
  { leading: true, trailing: false }
);

上面的代码不起作用。
https://lodash.com/docs/4.17.4#debounce 文档中的所有示例都使用命名函数。
使用 Loash debounce 和匿名函数有问题吗?

【问题讨论】:

  • 在这种情况下“不起作用”到底是什么意思?
  • 实际上denounce返回一个fn,当被调用时会在指定时间后调用内部fn
  • 表示“作品”的反义词:)

标签: javascript lodash


【解决方案1】:

是的,它不起作用,因为你不调用它。 在 ; 之前添加 () - 它会工作

【讨论】:

  • 这应该是答案:)
【解决方案2】:

为什么变量名在大括号中?

无论如何,lodash 的 debounce 函数是一个高阶函数,并且会返回一个 debounced 函数。所以你应该这样使用它。

const debounce = require('lodash/debounce');
const debouncedFunction = debounce(() => {
    console.log('debounced')
}, 1000)

编辑:只是想注意大括号用于解构require,并且是有效的语法。这对于没有像 lodash 那样实现 <library>/<property> 的库很有用。

【讨论】:

    猜你喜欢
    • 2015-05-21
    • 2013-05-17
    • 1970-01-01
    • 1970-01-01
    • 2017-05-03
    • 2020-01-23
    • 2021-07-16
    • 2016-07-17
    • 2015-10-19
    相关资源
    最近更新 更多