React-Apollo:查询调用变量列表

时间:2018-10-03 17:15:13

标签: javascript reactjs graphql react-apollo github-graphql

给出用户名列表和对GITHUB API的以下查询:-

query.gql:
query USER_QUERY($username:String!){
            user(login: $username){
                  name
                repositories(isFork:false){
                totalCount
              }
            }
          }

我想为每个composite query创建一个username

示例:

假设这是用户名列表

array usernames=["Sheldon","Leonard","Raj","Holowitz"]

预期查询:

 {
  sheldon:user(login: "sheldon") {
    name
    repositories(isFork: false) {
      totalCount
    }
  }
  leonard:user(login: "leonard") {
    name
    repositories(isFork: false) {
      totalCount
    }
  }
  raj:user(login: "raj") {
    name
    repositories(isFork: false) {
      totalCount
    }
  }
  holowitz:user(login: "holowitz") {
    name
    repositories(isFork: false) {
      totalCount
    }
  }

有没有react种方法来达到目的?

1 个答案:

答案 0 :(得分:0)

没有react的有效方法-react不适用于粘胶线模板。

您的预期查询不是以正确的graphQL方式构建的。它可能有用,但是您不应该那样想-当您需要数组时-只需请求一个数组即可。如果您真的需要这种结构,可以在获取“普通”数组之后执行(转换)-这是单行.filter() fn的问题。别指望普遍反应会采用这种(奇怪的)格式(行为)。

阅读有关thisthis的答案。

即使调用单独的查询,阿波罗也可能会对其进行批处理。