问题标签 [debounce]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
894 浏览

javascript - Loadash Debounce Vuejs 与 Buefy 自动完成

我正在使用带有 buefy、axios 和 loadash 的 Vuejs cdn,我正在尝试使用 _.debounce,因此我不会使用 Buefy 自动完成调用 API 太多时间并发送一个查询,我已经让它工作了,但是当我不使用去抖动时,自动完成没有显示结果,所以我的部分如下:

自动完成 HTML:

我的没有去抖动的方法正在工作:

然后我使用 debounce 函数,但是当我使用它替换另一个函数时,自动完成不会生成下拉列表,这很奇怪,因为该示例与我使用的相同:

其他一切都在工作,我没有从服务器或客户端收到任何错误,即使我 console.log 从 API 获取的机场,它们在那里,axios 函数工作!

编辑: 问题出在我使用的箭头函数上,当您使用通常使用()=>的箭头函数时this,它不会保留,而是this仅来自该新函数。

0 投票
2 回答
349 浏览

javascript - 累积 id 以发出单个 ajax 请求

我有多个地方需要发出 ajax 请求来获取与某些 id 对应的项目。但是,我只想通过累积这些 id 并消除发出 ajax 请求的实际方法来发出一个请求……到目前为止,我已经想出了这段代码,但它只是感觉丑陋/不可重用。

有没有更简单/推荐的方法来实现类似的结果而无需像我在这里所做的那样共享resolve/变量?promise

这是一个小提琴

0 投票
1 回答
1862 浏览

javascript - 如何使用 redux-saga 创建领先的去抖动

有没有办法做一个领先的去抖?

食谱上的示例仅显示了尾随去抖动。所以下面是尾随去抖动示例,我们将逻辑延迟 500 毫秒:

我想在第一次调用时执行逻辑,取消任何后续调用,直到 500 毫秒结束。

编辑

这可以通过使用takeLeadingthen 将 saga 延迟到最后你想要去抖动的时间来完成。

0 投票
1 回答
287 浏览

testing - 在 Elm 中测试去抖动

我正在尝试在我的 Elm 应用程序中测试去抖动功能,但不知道如何。

去抖应用于模糊搜索的文本字段,以避免发出过多的 http 请求,它以本示例https://ellie-app.com/jNmstCdv3va1为模型并遵循相同的逻辑。

我想确保,在调用之后

Http 请求仅在 debounceTime 之后发送。

在使用 searchInput 消息调用更新函数后,我可以轻松地测试模型。例如,在这里我检查模型中“debouncingCounter”字段的初始值是否设置为 1:

但是,我看不到如何测试延迟的 Cmd Msg 对模型的影响,因为我无法直接应用更新函数返回的 cmd 值。

似乎实现去抖动的不同方式并不能解决问题,因为它们都依赖于命令消息。

0 投票
2 回答
39507 浏览

angular - 如何在角度组件中使用 debounceTime?

我的要求是以仅在用户停止键入后才显示错误消息的方式执行反应式表单字段验证。

我如何使用响应式表单和 Rxjs debounceTime 来实现这一点?

我正在寻找一种适用于反应式表单的解决方案

0 投票
1 回答
282 浏览

elm - 在 let 表达式中使用 elm 去抖动

我很想明白为什么这不起作用。我正在尝试去抖动,但不是视图中的用户事件。按照想法,这应该进入连续流,这将发生一次,但每隔几秒钟发生一次。这种架构的主要思想是事件可能会从不同的地方触发,但它只会发生一次。我制作了一个简单的示例应用程序:

https://ellie-app.com/tvQ3L6dGrqa1

0 投票
1 回答
23864 浏览

javascript - 如何在异步功能上使用 debounce?

如何debounceasync函数上使用?我的vue-app 中有一个方法,它从 API 中获取数据,该 API 连续调用我想要避免的 API。

这是我的方法:

我以前安装lodash过,我该如何实现呢?

0 投票
2 回答
575 浏览

wordpress - Debounce Wordpress 动作钩子(或任何其他 PHP 函数)

我有一个 Wordpress 插件,它在 post/postmeta 更改发生后发送帖子数据。

问题是在繁忙的 Wordpress 网站上可能会有很多 postmeta 更改,所以我想将元更新去抖动/节流/聚合到单个 POST 调用,包裹在 1 秒的时间段内。

不知道如何处理这个,因为我已经使用异步语言一段时间了,并且找不到与 PHP 等效的 setTimeout。
有什么可分享的想法吗?

0 投票
3 回答
2545 浏览

javascript - 无法将 debounce 分配给类属性

我正在使用带有 Stage 2 预设的 Babel,并且有一个这样的 React 组件类:

这按预期工作。窗口调整大小后 1000 毫秒,handleResize 方法触发并且控制台记录“Hello”。

为什么我不能执行以下操作?

在这种情况下,我收到一个错误:

我一定遗漏了一些东西,但我认为两者基本上都是为类分配属性值的方法。

0 投票
1 回答
4127 浏览

javascript - JavaScript 去抖功能

我构建了一个 JavaScript debounce 函数,如果这是正确的方法,我需要 JavaScript 专家的意见,如果不是,那么当前函数的缺陷是什么。提前感谢您的意见,这将有助于我学习。