Когда я запускаю свое реагирующее нативное приложение, я не хочу запрашивать «все» для автономной работы.
Так что я
query all {
groups {
...GroupF
}
persons {
...PersonF
}
}${PERSON_ITEM}${GROUP_ITEM}
PersonF и GroupF являются фрагментами.
В первом представлении есть список групп, каждый из которых может принадлежать группе.Когда пользователь нажимает на группу, запрос выглядит так:
persons($group: ID) {
persons(group: $group) {
...PersonsF
}
}${PERSON_ITEM}
Но мои cacheRedirects просто не отражают те же данные, что и возвращаемые.
Я знаю это, потому что я console.log outответ в моей обертке компонентов (здесь это выглядит отлично)
, но в моем
const cache = new InMemoryCache({
cacheRedirects: {
Query: {
persons: (_, args, {getCacheKeys}) => {
// I have tried everything here but nothing maps correctly
// I have tried getCacheKey({__typename: 'Person', id: args.group})
// I have tried following the apollo documentation
// No luck, it just can't find the group
// Using the chrome dev tools I don't see persons having groups
const a = getCacheKey({__typename: 'Person', id: args.group});
// Console.log(a) is:
// {generated: false, id: "Person:9", type: "id", typename "Person"}
}
}
}
});
Есть ли у вас какие-либо предложения о том, как написать правильный кэш-запрос перенаправления пользователей?
Помощь действительно очень ценится
| 1 |https://www.apollographql.com/docs/react/advanced/caching.html#cacheRedirect