# 设置“限制无限搜索结果”时出现 Klipy 问题

**URL:** <https://meta.discourse.org/t/klipy-issue-when-limit-infinite-search-results-is-set/402679>\
**Category:** Bug\
**Tags:** gifs\
**Created:** [2026年五月11日 17:00 UTC](https://meta.discourse.org/t/klipy-issue-when-limit-infinite-search-results-is-set/402679 "2026-05-11T17:00:37Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![RGJ](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/rgj/32/523185_2.png) [@RGJ](https://meta.discourse.org/u/RGJ)\
**Post date:** [2026年五月11日 17:00 UTC](https://meta.discourse.org/t/klipy-issue-when-limit-infinite-search-results-is-set/402679/1 "2026-05-11T17:00:37Z")

</div>

Klipy 类别未进行分页，获取所有类别只需一次调用。  
不过，存在一个 `@loadMore={{this.loadMore}}`。

当启用“限制无限搜索结果”选项时，`loadMore` 会被触发，而 Klipy 会报错，因为缺少 `q` 参数。

 ![image](https://global.discourse-cdn.com/meta/original/4X/1/8/f/18fb2d35e3e297c9ea3cc426a30fa47a9486baab.jpeg)

解决方案：

- 从类别显示中移除 `loadMore`，参见 [PR](https://github.com/discourse/discourse-gifs/pull/133)

---

<div class="post-metadata">

**Author:** ![RGJ](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/rgj/32/523185_2.png) [@RGJ](https://meta.discourse.org/u/RGJ)\
**Post date:** [2026年五月11日 18:24 UTC](https://meta.discourse.org/t/klipy-issue-when-limit-infinite-search-results-is-set/402679/2 "2026-05-11T18:24:17Z")

</div>

此外，如果在启用了 `limit_infinite_search_results` 的情况下（不仅限于 Klipy），在空搜索框中按退格键也会导致组件崩溃。

这个条件似乎是问题所在。我猜它试图在一个地方组合太多的逻辑。

```plaintext
    const meetsLengthRequirement = skipLengthCheck || this.query.length > 2;
    if (
      (meetsLengthRequirement && !settings.limit_infinite_search_results) ||
      (settings.limit_infinite_search_results &&
        this.currentGifs.length < settings.max_results_limit)
    ) 

```
