Вы можете переключить транспорт на веб-сокеты:
import cubejs from '@cubejs-client/core';
import WebSocketTransport from '@cubejs-client/ws-transport';
const cubejsApi = cubejs({
transport: new WebSocketTransport({ authentication: CUBEJS_TOKEN, apiUrl: 'ws://localhost:4000/' })
});
и использовать подписку реагирующих хуков:
import { useCubeQuery } from '@cubejs-client/react';
const Chart = ({ query }) => {
const { resultSet, error, isLoading } = useCubeQuery(query, { subscribe: true });
if (isLoading) {
return Loading...;
}
if (error) {
return {error.toString()}
;} вернуть;};
Чтобы узнать больше: https://cube.dev/docs/real-time-data-fetch