Можно ли запрашивать одно и то же поле несколько раз с помощью graphql

Что я хочу сделать, так это запросить определенное поле несколько раз с разными аргументами. Возможно ли это в GraphQL?

Что-то вроде этого:

query {
    myItem(size: 100, type: 2) {
        id,
        name
    }
    myItem(size: 150, type: 2) {
        id,
        name
    }
    myItem(size: 10, type: 1) {
        id,
        name
    }
}
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Что такое Apollo Client и зачем он нужен?
Что такое Apollo Client и зачем он нужен?
Apollo Client - это полнофункциональный клиент GraphQL для JavaScript-приложений, который упрощает получение, управление и обновление данных в...
28
0
5 872
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Да, это возможно, но не в таком виде. Сервер GraphQL отклонит такой запрос, поскольку поле с одним и тем же именем используется несколько раз, но с разными аргументами.

Вам нужно использовать псевдонимы:

query {
  item1: myItem(size: 100, type: 2) {
    id,
    name
  }
  item2: myItem(size: 150, type: 2) {
    id,
    name
  }
  item3: myItem(size: 10, type: 1) {
    id,
    name
  }
}

Вы можете найти больше информации о псевдонимах здесь:

http://graphql.org/learn/queries/#aliases

Другие вопросы по теме