中继/ graphql查询中的3个点/句点/省略号是什么意思?

jbr*_*own 25 graphql relayjs

继电器的文档包含此片段:

query RebelsRefetchQuery {
  node(id: "RmFjdGlvbjox") {
    id
    ... on Faction {
      name
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

... on Faction对语法有何意义?

win*_*ent 31

有两种...与片段相关的用法.

通过引用合并片段

query Foo {
  user(id: 4) {
    ...userFields
  }
}

fragment userFields on User {
  name
}
Run Code Online (Sandbox Code Playgroud)

具有将片段中的字段组成嵌入查询的效果:

query Foo {
  user(id: 4) {
    name
  }
}
Run Code Online (Sandbox Code Playgroud)

请注意,片段可能构成其他片段.

内联片段

这些可用于以类型相关的方式组成字段.例如:

query Foo {
  profile(id: $id) {
    url
    ... on User {
      homeAddress
    }
    ... on Business {
      address
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

在此示例中,服务器将根据请求的对象是a 还是a 来确定是否在运行时返回homeAddressor或addressfield .UserBusiness


jbr*_*own 6

啊.它在这里解释:

使用扩展运算符(...)消耗片段.片段选择的所有字段将添加到与片段调用相同级别的查询字段选择中.这通过多级片段传播发生.