У нас есть приложение React / GraphQL внутри основного "приложения". Когда пользователь выходит из системы, мы хотим очистить кеш GQL. Однако функция выхода из системы существует в приложении-оболочке, а не в приложении React.
При повторном входе в кеш не очищается, что необходимо решить. Несколько вопросов о том, как решить эту проблему:
1) можем ли мы проверить наличие кэша, когда приложение React пытается создать новый экземпляр? Можно ли добавить флаг «версия»?
const client = new ApolloClient({
link: authLink.concat(restLink),
cache: () => {
if (client.cache) {
client.cache.reset()
}
return new InMemoryCache();
}
});
2) или мы можем найти существующее клиентское приложение через любое другое окно или глобальный объект? 3) должно ли приложение реагировать установить клиент как часть локального состояния, а затем сравнить клиента с useRef
, возможно? Если они не совпадают, сбросить?
Открыть для предложений ...