GWT Suggestbox:旧回调覆盖新回调

GWT Suggestbox: Older callbacks overwrite newer ones

背景

我正在使用带有自定义 SuggestOracle 的 SuggestBox,但性能不佳。

我输入 "a",所有以字母 "a" 开头的结果都将作为建议返回。由于有很多结果,建议会延迟几秒钟显示。

但与此同时,我还在继续打字。所以现在我输入了 "ab",结果明显少于 "a"。所以建议几乎立即显示。

问题

显示 "ab" 个建议后,来自 "a" returns 的回调并覆盖 "ab" 个建议。最后,我得到了一个与我输入的单词不匹配的建议列表。

我的问题

Is there a way to prevent older callbacks to overwrite newer ones ?

当您的异步进程返回时,检查建议框的当前文本是否与原始请求中的文本相匹配。然而,这将 oracle 与具有 1:1 关系的建议框联系起来(如果这是一个问题,您可以有一个执行此过滤的建议 oracle,并委托给一个共享的 oracle)。

If not, is there a way to wait for at least 3 letters before the suggestions mechanism is triggered ?

只需在您的建议 oracle 中执行此操作,为太短的请求字符串返回一个空的建议列表。