我正在尝试使用 Elasticsearch 中的一些索引文件来构建和应用 ReactiveSearch 和 ReactiveMaps。
Elasticsearch 中的索引文件有一个字段“位置”,例如:
"location": {
"Lat": 56.746423,
"Lon": 37.189268
}
以及“标题”或“作者”等其他字段。
我有一个谷歌地图 API 密钥,在我的 App.js 文件中我有这些组件:
<DataSearch
componentId="mainSearch"
dataField={["Title", "Title.search", "Abstract", "Abstract.search"]}
queryFormat="and"
placeholder="Search for HEP"
autosuggest={true}
className="datasearch"
innerClass={{
input: "searchbox",
list: "suggestionlist"
}}
/>
<ReactiveMap
componentId="map"
dataField="location"
size={100}
defaultZoom={13}
defaultCenter={{ lat: 37.74, lng: -122.45 }}
showMapStyles={true}
defaultMapStyle="Standard"
showMarkerClusters={true}
showSearchAsMove={true}
searchAsMove={true}
react={{
and: "mainSearch"
}}
onData={result => ({
label: result.Title
})}
/>
在同一个文件(“App.js”)中,我有以下几行:
<ReactiveBase
app="title"
url=here_the_elasticsearch_cluster
mapKey="here_my_googlemapsAPI_key"
>
同样在文件 Public/index.html 我有
<script
type="text/javascript"
src="https://maps.google.com/maps/api/js?v=3.34&key=MY_GOOGLE_MAPS_API_KEY&libraries=places"
></script>
但是,当我在 mainBar 中搜索任何文档时,我找到了它,但是,当我单击它时,它并没有出现在地图中。
我究竟做错了什么?