У меня есть ловушка useSubscription, которая работает правильно, но через 60 секунд сервер решает прекратить подписку (причина не важна, это может произойти). Как я могу теперь снова подписаться? Я знаю, что ошибка установлена в возвращаемом значении вызова useSubscription, но я не знаю, как отписаться.
Это простой компонент, который показывает ведение журнала модуля Kubernetes:
const Logs: React.FunctionComponent<Props> = props => {
const { data, error } = useInstanceLogsSubscription({
variables: { runid: props.namespace, pod: props.pod },
});
//WHAT TO DO WHEN ERROR IS SET??
const logRef = useRef('');
useMemo(() => {
if (data) logRef.current += data.instanceLogs + '\r\n';
if (error) logRef.current += error.message + '\r\n';
}, [data, error, logRef]);
return (
<div className="sciui-card sciui-m-l sciui-p-l sciui-bg-p-5">
<Log>{logRef.current}</Log>
</div>
);
};