gpt4 book ai didi

javascript - 如何传递去抖动等待参数

转载 作者:行者123 更新时间:2023-11-30 14:19:22 25 4
gpt4 key购买 nike

我正在使用 mobx 商店中 lodash 库的 debounce:

setSettingsDebounced = debounce(flow(function* (which) {
try {
yield patchLightSettings(which);
}
}.bind(this)), 200);

这个方法是这样调用的:

this.setSettingsDebounced('something');

一切正常,我的问题是:我应该如何为去抖动传递 wait(目前硬编码为 200)参数,这样它仍然有效符合预期吗?

最佳答案

你可以像这样简单地包装去抖:

const DELAY = 2000
const debounceWithParam = (fn, timeInMs) => _.debounce(fn, timeInMs)
const myFn = () => console.log('FOOOOO')

const myDebouncedFn = debounceWithParam(myFn, DELAY)

myDebouncedFn()
myDebouncedFn()

// Wait for one "FOOOOO" in the console :)
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.11/lodash.min.js"></script>

请注意,尽管我们确实调用了 2 次新函数,但只会显示一个 FOOOOO

所以在你的情况下:

 setSettingsDebounced = debounceWithParam(setSettingsFn, DELAY);

关于javascript - 如何传递去抖动等待参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53006437/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com