使用Algolia自动完成功能执行构面搜索查询

Xia*_*gda 4 autocomplete faceted-search algolia

我的索引对象有一个city字段,我想用自动完成检索这些,但是文档似乎缺少关于如何执行查询(只有基本的搜索文档可用),我发现了原型IndexCore.prototype.searchForFacetValues,autocomplete.js但我不知道使用它.

Har*_*ene 10

您应该能够使用以下来源:

var client = algoliasearch("YourApplicationID", "YourSearchOnlyAPIKey");
var index = client.initIndex("YourIndex");

autocomplete("#search-input", { hint: false }, [
  {
    source: function(query, callback) {
      index
        .searchForFacetValues({
          facetName: "countries",
          facetQuery: query
        })
        .then(function(answer) {
          callback(answer.hits);
        })
        .catch(function() {
          callback([]);
        });
    },
    displayKey: "my_attribute",
    templates: {
      suggestion: function(suggestion) {
        return suggestion._highlightResult.my_attribute.value;
      }
    }
  }
]);
Run Code Online (Sandbox Code Playgroud)

这使用该searchForFacetValues方法来获得结果.