提前滚动:不起作用

提前滚动:不起作用,第1张

提前/滚动:不起作用

好的,我认为您有两个问题。

问题1:

您看起来像是在使用10.0版之前的预输入API。要使用远程,您必须使用Bloodhound或类似的东西来获取结果。

我最近实现了此功能,这是一个有效的示例:

var $vartypeahead = $(yourjqueryelement);var engine = new Bloodhound({  name: 'typeaheads',  remote: {"url":'/search/typeahead?q=%QUERY'},  datumTokenizer: function(d) { return d;},  queryTokenizer: function(d) { return d;}});engine.initialize();$vartypeahead.typeahead({          "minLength": 2,          "highlight": true        },        {          "source": engine.ttAdapter()          });

我确实必须对所做的事情稍作修改;我在前端使用骨干并将上面的内容拼接到其中(为此,我在typeahead项目中拥有PR)

问题二

就ES而言,我不确定您的映射是否正确,通常您用于预输入项目的映射将如下所示:

{  "settings": {    "analysis": {      "filter": {        "autocomplete_ngram": {          "max_gram": 24,          "min_gram": 2,          "type": "edge_ngram"        }      },      "analyzer": {        "autocomplete_index": {          "filter": [ "lowercase", "autocomplete_ngram"          ],          "tokenizer": "keyword"        },        "autocomplete_search": {          "filter": [ "lowercase"          ],          "tokenizer": "keyword"        }      }    },    "index": {      "number_of_shards": 20,      "number_of_replicas": 1    }  },  "mappings": {    "yourtype": {      "properties": {        "title": {          "type": "multi_field",          "fields": { "title_edgengram": {   "type": "string",   "index": "analyzed",   "index_analyzer": "autocomplete_index",   "search_analyzer": "autocomplete_search" }, "title": {   "type": "string",   "index": "not_analyzed" }          }        }      }    }  }}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/4958220.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-13
下一篇 2022-11-13

发表评论

登录后才能评论

评论列表(0条)

保存