У меня есть схема, которая для простоты описания такова
type level0 {
ID id
String name
[level1] level1s
}
type level1 {
ID id
String name
[level2] level2s
}
type level2 {
ID id
String name
}
type Query {
getLevel0(ID: id)
}
, когда я первоначально получаю свои данные, я запрашиваю, строю свой запрос как таковой
query GetLevel0($id: ID) {
getLevel0(id: $id) {
id
name
level1s {
id
name
level2s {
id
name
}
}
}
}
Итак, на данный моментТеперь я получаю полностью вложенную объектную иерархию своих данных, чтобы я мог загружать все, что мне нужно для быстрого управления данными.
Итак, теперь мой вопрос, когда я собираюсь управлять своей коллекцией level2s для привязки сверху внизэта иерархия объектов просто движется без необходимости создавать дополнительные запросы для прямого доступа к другой информации.Я также использую клиент InMemoryCache, который я хочу обновлять без дополнительных сетевых вызовов для повторного получения полных данных.
Есть ли способ, которым я могу построить схему для поддержки фильтрации в подколлекции?
как, например,
query GetLevel0($id: ID, $level1id: ID) {
getLevel0(id: $id) {
id
name
level1s(id: $level1id) {
id
name
level2s {
id
name
}
}
}
}
Хотите узнать, будет ли это возможным для возможности предварительно сформировать фильтр из результатов кэша, когда я выполняю cache.readQuery для добавления новогоили удалите записи из вложенных коллекций.
Любые дополнительные знания по этому вопросу были бы великолепны.
Спасибо!