当搜索需要在数组类型的弹性字段上发生时,不会显示DataSearch的建议

问题描述 投票:2回答:1

我的弹性搜索将结果作为弹性数组提供。这是映射的外观。

 "positions": {
            "properties": {
              "en": {
                "type": "text",
                "fields": {
                  "keyword": {
                    "type": "keyword",
                    "ignore_above": 256
                  }
                }
              },
              "fr": {
                "type": "text",
                "fields": {
                  "keyword": {
                    "type": "keyword",
                    "ignore_above": 256
                  }
                }
              }

所以这给我的结果如下。

"companyinfo.positions.en": " Chain Corporate, Food Services, Service Manager, Restaurant Manager, Cybercafé Manager, Internet Café Manager, Assistant Bar Manager, Assistant Manager, Restaurant Assistant Manager, Banquet Manager, Bar Manager, Cafeteria Manager",

我使用value作为“companyinfo.positions.en”获取DataSearch控件的dataField属性。

目前我没有使用onSuggestion属性,而是期待DataSearch自动为我提供建议。但它没有给我任何建议。但是控件按预期给出了搜索结果。

<DataSearch 
    componentId={id}
    dataField={'companyinfo.positions.en'}        
    placeholder={'Search Jobs'}                
    URLParams={true}
    autosuggest={true}        
    showClear={true}                
    />      

如果我提供任何其他文本字段作为DataSearch控件的dataField,那么我得到建议,为什么它不适用于弹性数组字段。

请建议我能做些什么来正确地得到建议。如果我必须使用onSuggestion属性,我如何提供标签的字段名称,我不能提供字段名称。

reactjs elasticsearch reactivesearch
1个回答
1
投票

这是库中嵌套数组字段的问题,并在v2.8.2中修复。 Changelog

© www.soinside.com 2019 - 2024. All rights reserved.