我试图模仿某些 GraphQL 的功能,但我无权运行原始版本。它的形式如下:
query {
dataSources(dataType: Ais) {
... on AisDataSource {
messages(filter: {broadcastType: Static}) {
... on AisStaticBroadcast {
field1
field2
Run Code Online (Sandbox Code Playgroud)
(我省略了右括号)。
我的理解是... on要么包含一个片段(这里没有),要么在替代方案之间进行选择(但这些是嵌套的)。那么这个查询是错误的,还是还有更多的问题... on?
Dan*_*den 22
这
\n{\n user {\n ... on User {\n id\n username\n }\n }\n}\nRun Code Online (Sandbox Code Playgroud)\n和这个
\n{\n user {\n ...UserFragment\n }\n}\n\nfragment UserFragment on User {\n id\n username\n}\nRun Code Online (Sandbox Code Playgroud)\n是等价的。在这两种情况下,您都使用片段。在第一个示例中,我们简单地将片段称为内联片段。
\n当请求返回复合类型(对象、接口或联合)的字段时,您必须为返回类型指定一个选择集或一个或多个字段。由于片段必须包含类型条件(on关键字加类型名称),因此它们可用于根据运行时实际返回的类型指定不同的选择集。
{\n user {\n ...RegularUserFragment\n ...AdminFragment\n }\n}\n\nfragment RegularUserFragment on RegularUser {\n id\n username\n}\n\nfragment AdminFragment on Admin {\n id\n username\n accessLevel\n}\nRun Code Online (Sandbox Code Playgroud)\n我们所说的是“如果运行时的类型是这样,则返回这组字段”。如果片段内的任何字段也返回复合类型,则这些字段还必须指定 \xe2\x80\x94 的选择集,这意味着可以在这些选择集中使用其他片段。
\n| 归档时间: |
|
| 查看次数: |
10578 次 |
| 最近记录: |