ReactiveSearch、DataSearch 和索引用户查询
ReactiveSearch, DataSearch and indexing user query
我正在使用 Reactivesearch 的 DataSearch 来实现自动完成功能,我正在尝试弄清楚如何获取用户选择的查询并将其添加到我在 Appbaseio 托管的自动完成索引中?
当我说用户选择的查询时,我指的是输入或从 DataSearch 组件下拉列表中选择的查询。
这是我到目前为止的想法
<DataSearch
componentId="SearchSensor"
dataField={["original_title"]}
className="search-bar"
onValueSelected={
function(value, cause, source) {
console.log("current value: ", value)
}
}
iconPosition="right"
innerclassName={{
list: "text-item"
}}
/>
上面的onValueSelected直接取自docs。看来这是我需要使用的 属性 才能做到这一点。我只是不确定如何将它连接到我的 Appbaseio ES 索引?
onValueSelected
是在此处获取选定值的正确方法。 (如果需要,您还可以使用 onQueryChange
获取完整查询)。在 onValueSelected
中获取此选定值后,您可以使用对 elasticsearch 索引的简单 fetch
请求对其进行索引或将其发送到后端。还有一个helper library and the docs休息的可以试试。
我还建议将索引逻辑拉到服务器而不是在客户端公开它,因为您需要写入凭据才能执行写入。这将使您的写入凭据更安全。
例如:
<DataSearch
...
onValueSelected={(value) => {
fetch('YOUR_SERVER_URL' or 'Elasticsearch URL', { method: 'POST', body: {...} })
}
/>
我正在使用 Reactivesearch 的 DataSearch 来实现自动完成功能,我正在尝试弄清楚如何获取用户选择的查询并将其添加到我在 Appbaseio 托管的自动完成索引中?
当我说用户选择的查询时,我指的是输入或从 DataSearch 组件下拉列表中选择的查询。
这是我到目前为止的想法
<DataSearch
componentId="SearchSensor"
dataField={["original_title"]}
className="search-bar"
onValueSelected={
function(value, cause, source) {
console.log("current value: ", value)
}
}
iconPosition="right"
innerclassName={{
list: "text-item"
}}
/>
上面的onValueSelected直接取自docs。看来这是我需要使用的 属性 才能做到这一点。我只是不确定如何将它连接到我的 Appbaseio ES 索引?
onValueSelected
是在此处获取选定值的正确方法。 (如果需要,您还可以使用 onQueryChange
获取完整查询)。在 onValueSelected
中获取此选定值后,您可以使用对 elasticsearch 索引的简单 fetch
请求对其进行索引或将其发送到后端。还有一个helper library and the docs休息的可以试试。
我还建议将索引逻辑拉到服务器而不是在客户端公开它,因为您需要写入凭据才能执行写入。这将使您的写入凭据更安全。
例如:
<DataSearch
...
onValueSelected={(value) => {
fetch('YOUR_SERVER_URL' or 'Elasticsearch URL', { method: 'POST', body: {...} })
}
/>