如何使用 Apollo 发送具有不同 ID 的类似 GraphQL 查询?

问题描述

我在我的 React 应用中使用 Apollo GraphQL。

例如,我有一个查询

{
  files(id: 1) {
    name
  }
}

我有 10 个文件,我只想获取一个字段。

据我所知,我不能创造这样的东西

{
  files(id: 1) {
    name
  }
  files(id: 2) {
    name
  }
}

它给了我一个错误

我已准备好遍历 id 的 [1,2,3,..10],但似乎无法使用 useQuery。

我被卡住了。感谢您的帮助!

解决方法

您可以在 1 个查询中完成

{
  file1: files(id: 1) {
    name
  }
  file2: files(id: 2) {
    name
  }
}

或者类似的东西,如果它支持多个参数

query findFiles($files: [Int!]!) {
  files(ids: $id) {
    name
  }
}