gpt4 book ai didi

jquery - Twitter Typeahead - 重复的 AJAX 建议

转载 作者:行者123 更新时间:2023-12-01 06:46:55 25 4
gpt4 key购买 nike

我能够毫无问题地使用旧版本的 Twitter Typeahead,但我对新版本的了解绝对有限,而且我对为什么会出现重复条目​​感到困惑。

这是我的 JavaScript:

// Sources
var sources = new Bloodhound({
datumTokenizer: Bloodhound.tokenizers.obj.whitespace('name'),
queryTokenizer: Bloodhound.tokenizers.whitespace,
prefetch: '/sources/prefetch/',
remote: '/sources/prefetch/'
});

sources.initialize();

$('#a_sources_list').typeahead(null, {
name: 'sources',
displayKey: 'name',
source: sources.ttAdapter()
})

/sources/prefetch/ 返回:

[{"id":"1","name":"Google"},{"id":"3","name":"Yahoo"}]

以下是正在发生的情况的屏幕截图:Duplicate Results

最佳答案

问题在于从同一源调用 prefetchremote

此问题的详细信息如下:
https://github.com/twitter/typeahead.js/issues/614

本质上,BloodHound 有一个默认限制。如果建议数量低于该限制,它将调用远程 URL。

有一个选项可以创建重复检测器:
https://github.com/twitter/typeahead.js/blob/master/doc/bloodhound.md#options

您可以使用它来确保同一项目不会出现两次。

这是 dupDetector 的示例:
https://github.com/twitter/typeahead.js/issues/606#issuecomment-34667422

dupDetector: function(remoteMatch, localMatch) {
return remoteMatch.id === localMatch.id;
}

关于jquery - Twitter Typeahead - 重复的 AJAX 建议,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24069307/

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