Ars*_*-II 2 relay apollo graphql
有一种方法来获取与有条件的东西GQL使用@include(if: $withFriends)
query Hero($episode: Episode, $withFriends: Boolean!) {
hero(episode: $episode) {
name
friends @include(if: $withFriends) {
name
}
}
}
Run Code Online (Sandbox Code Playgroud)
但如果$withFriends是假的,我想获取其他东西。我可以通过传递额外的变量来实现它$notWithFriends
query Hero($episode: Episode, $withFriends: Boolean!) {
hero(episode: $episode) {
name
friends @include(if: $withFriends) {
name
}
appearsIn @include(if: $notWithFriends)
}
}
Run Code Online (Sandbox Code Playgroud)
像这样:@include(else: $withFriends)或@include(ifNot: $withFriends)或@include(if: !$withFriends)
您可以使用@skip指令,它的工作原理与@include- 如果if参数为true:则省略选择集中的字段:
query Hero($episode: Episode, $withFriends: Boolean!) {
hero(episode: $episode) {
name
friends @include(if: $withFriends) {
name
}
appearsIn @skip(if: $withFriends)
}
}
Run Code Online (Sandbox Code Playgroud)
这样,如果$withFriends是true,只有name和friends会被选中。如果是false,则只有name和appearsIn将被选中。
| 归档时间: |
|
| 查看次数: |
1509 次 |
| 最近记录: |