猎犬和阿尔戈利亚

我有以下使用预输入代码:

var cities = function() {
  var cities = new bloodhound({
    datumTokenizer: bloodhound.tokenizers.obj.whitespace('display'),queryTokenizer: bloodhound.tokenizers.whitespace,//prefetch: 'inc/api/typeahead/movies.json',remote: {
      url: '/search/cities/%QUERY',wildcard: '%QUERY'
    }
  });

  $('#city,#delivery-city,#company-city').typeahead({
    hint: true,highlight: true,minLength: 1,},{
    name: 'city',display: 'city',source: cities,limit: 5,templates: {
      empty: [
        '<div class="empty-message" style="padding: 10px 15px; text-align: center;">','No city found with this name.','</div>'
      ].join('\n'),suggestion: Handlebars.compile('<div><span class="m--font-primary m--font-boldest">{{ display }}</span></div>')
    },matcher: function(item) {
      return true;
    }
  }).on('typeahead:selected',onSelectedCity);

  function onSelectedCity(e,data) {

    $('#county').val(data['county']);
    $('#street').val(data['street']);
    $('#postal-code').val(data['zipcode']);
  }
}

我遇到的问题是我使用Algolia来过滤结果,并且我希望bloodhound保留从Algolia接收到的确切结构,而不以任何方式干扰或过滤结果。我也不想带出bloodhound,因为我对通过AJAX和所有其他好东西来缓存和限制请求数量感兴趣。有没有一种方法可以利用所有其他好处,但是将结果保持与从Algolia收到的AJAX调用中得到的结果完全相同,而不会因bloodhound干扰而对结果进行排序或过滤?

谢谢! :)

sswwhh01 回答:猎犬和阿尔戈利亚

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/2916477.html

大家都在问