Bloodhound为Typeahead生成重复的自动完成建议

时间:2020-08-03 23:29:28

标签: python typeahead.js typeahead bloodhound

我已经用Bloodhound设置了我的Twitter Typeahead.js。 Bloodhound使用预先生成的包含常见建议的JSON文件,如果用户未选择任何建议,则它将通过用户查询访问API以生成更多建议。该API不知道JSON文件中已经包含了哪些建议,它只会为您提供与用户查询字符串匹配的任何内容。这意味着对于最常见的建议,用户会两次看到相同的选项-一次从JSON文件中一次看到,而在稍有延迟之后,从API查询中看到同一选项。

我的问题是我如何配置Bloodhound / Typeahead以便省略这些重复项?

var dockets = new Bloodhound({
    datumTokenizer: Bloodhound.tokenizers.obj.whitespace("text"),
    queryTokenizer: Bloodhound.tokenizers.whitespace,
    prefetch: '/static/dockets/dockets.json',
    remote: {
        url:  '/dockets/ajax-search/?query=%QUERY',
        wildcard: '%QUERY'
    }
});

$('#searchdocketform .typeahead').typeahead(null, {
    name: 'docket-search',
    display: 'text',
    source: dockets
});

0 个答案:

没有答案