У меня есть вопрос о cacheRedirects.
У меня есть один компонент, который запрашивает информацию для входа в систему пользователя:
query LoggedIn {
loggedIn {
user {
...CurrentUser
}
accessToken:
newLogin: Boolean
}
}
Затем у меня есть другой автономный компонент, который отображает отдельный результати немного информации о его пользователе.Я использую следующий запрос, который будет полностью кэширован уже предыдущим, поэтому нам не нужно попадать в сеть:
query CurrentUser {
currentUser {
...CurrentUser
}
}
Однако я не уверен, как настроить cacheRedirects такчто я могу избежать ненужного сетевого запроса?Я видел примеры в Интернете и обнаружил, что в них все запросы имеют «args», но в моем запросе его нет, поскольку я поместил его в заголовок http, что означает args в currentUser: (_, args, {getCacheKey}) является нулевым.
const cache = new InMemoryCache({
dataIdFromObject: (object: any) => {
switch (object.__typename) {
return object.username;
default:
return defaultDataIdFromObject(object);
}
},
cacheRedirects: {
Query: {
currentUser: (_, args, { getCacheKey }) => {
getCacheKey({ __typename: 'CurrentUser' });
},
},
},
});
Выше не работает.Спасибо!