代码之家  ›  专栏  ›  技术社区  ›  Oli

可以用graphql多次查询同一个字段吗?

  •  6
  • Oli  · 技术社区  · 8 年前

    我要做的是用不同的参数多次查询特定的字段。在graphql中这是可能的吗?

    像这样:

    query {
        myItem(size: 100, type: 2) {
            id,
            name
        }
        myItem(size: 150, type: 2) {
            id,
            name
        }
        myItem(size: 10, type: 1) {
            id,
            name
        }
    }
    
    1 回复  |  直到 8 年前
        1
  •  16
  •   tenshi    8 年前

    是的,这是可能的,但不是这种形式。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

    推荐文章