Я использую useQuery
Hook следующим образом:
function Foo() {
const { data, error, loading } = useQuery(MY_QUERY, { pollInterval: 1000 });
return (
<>
<Bar/>
<Baz/>
{data}
</>
);
}
Теперь и Bar
, и Baz
используют один и тот же запрос. Baz
является боковой панелью, и я хотел бы отключить опрос, пока он активен.
У меня есть глобальный редуктор для обработки состояния Baz
, и я изменил его следующим образом:
if (isSidebarOpen === false) {
...
apolloClient.stop();
} else {
// TODO
}
Это останавливает опрос, но я не знаю, как его активировать, когда боковая панель закрывается (то есть в блоке else
выше).
Я делаю это правильно? Есть ли другой способ переключить опрос запроса GraphQL с помощью Apollo?