У меня есть приложение на React native, вывод книг и есть две схемы с помощью которых я запрашиваю данные:
Схема вывода все персонажей
export const GET_ALL_USERS = gql`
query {
characters{
results {
id
name
status
species
type
gender
origin {
id
name
type
dimension
created
}
location {
id
name
type
dimension
created
}
image
episode {
id
name
air_date
episode
created
}
created
}
}
}
`
Схема вывода одного персонажа
export const GET_SINGLE_USER = gql`
query GetSingleUser($id: ID!){
character(id: $id) {
id
name
status
species
type
gender
origin {
id
name
type
dimension
created
}
location {
id
name
type
dimension
created
}
image
episode {
id
name
air_date
episode
created
}
created
}
}
`
Всех персонажей я вывожу и когда я нажимаю на карточку персонажа, то запрашиваю данные по этому персонажу и выводу имя там и тд. И когда я нажимаю на карточку то идет запрос на сервер и данные подгружаются спустя 0.5 cек где-то, но Appolo кэширует данные и я же запрашиваю в самом начале всех пользователей, почему он не берет данные оттуда?
Работает вариант когда я в начале запрашиваю всех пользователей и каждого пользователя при загрузке страницы, вот тогда данные берутся из кэша, но тут слишком много запросов получается, если персонажей 20, то при загрузке страницы будет 20 запросов и страница долго грузится