Я ищу решение, в котором я могу добавить подписку к определенному маршруту вместо глобальной привязки подписки при запуске приложения.
Я знаю, что подписку можно получить с помощью следующего кода
const wsLink = new WebSocketLink({
uri: `ws://localhost:4000`,
options: {
reconnect: true,
connectionParams: {
authToken: localStorage.getItem(AUTH_TOKEN),
}
}
})
const link = split(
({ query }) => {
const { kind, operation } = getMainDefinition(query)
return kind === 'OperationDefinition' && operation === 'subscription'
},
wsLink,
authLink.concat(httpLink)
)
const client = new ApolloClient({
link,
cache: new InMemoryCache()
})
Но если я добавлю это, подписка будет активна сразу после загрузки страницы, независимо от того, на какой странице я нахожусь.
Есть ли какое-либо решение, где я могу вместо этого связать подписку на определенной страницео том, что это связано во всем мире.