У меня есть кластер Elasticsearch, в который вливаются события в реальном времени. Я думал, что смогу достичь этого, показать события, когда они поступают внутрь ReactiveList
in ReactiveSearch .Вот что у меня примерно есть:
class App extends Component {
render() {
...
return {
<div>
<ReactiveBase
app="my-index"
url="my-secret-es-cluster"
>
...
<ReactiveList
componentId="Results"
dataField="time"
sortBy="desc"
stream
react={{
and: ['SensorX', 'SensorY'],
}}
onData={(res) => <div>{res.time}: {res.some.field_of_interest}</div>}
/>
</ReactiveBase>
</div>
}
}
}
Всякий раз, когда я делаю изменение в одном из датчиков (то есть фильтров), я вижу изменения, отраженные в компоненте ReactiveList
.Однако они не обновляются всякий раз, когда изменяется база данных, что, как я предполагал, будет происходить при включенном stream
:
Этот список может самостоятельно обновляться на основе изменений в других компонентах или изменений всама база данных.
Два вопроса:
- Не понял ли я, как должен работать этот компонент, или мне нужно сделать что-то еще, прежде чем я смогу увидеть обновления дляКластер ES автоматически отражается в результатах?
- Можно ли не загружать результаты, если не установлен / не выбран определенный датчик (например, из компонента
DataSearch
)?