Query FunctionsWarunkowa Manipulacja Polami
Warunkowa Manipulacja Polami
Included in the “Power Extensions” bundle
Dodanie meta-dyrektyw @if i @unless do schematu GraphQL, aby warunkowo wykonywać zagnieżdżoną dyrektywę na polu.
@if
@if wykonuje swoje zagnieżdżone dyrektywy tylko wtedy, gdy warunek ma wartość true.
W tej query użytkownicy "Leo" i "Peter" mają swoje nazwy przekonwertowane na wielkie litery, ponieważ znajdują się w tablicy "specjalnych użytkowników", podczas gdy "Martin" nie:
query {
users {
name
@passOnwards(as: "userName")
@applyField(
name: "_inArray"
arguments: {
value: $userName
array: ["Leo", "John", "Peter"]
}
passOnwardsAs: "isSpecialUser"
)
@if(
condition: $isSpecialUser
)
@strUpperCase
}
}...co daje:
{
"data": {
"users": [
{
"name": "LEO"
},
{
"name": "Martin"
},
{
"name": "PETER"
}
]
}
}@unless
Podobne do @if, ale wykonuje zagnieżdżone dyrektywy, gdy warunek ma wartość false.
W tej query to użytkownik "Martin" ma swoją nazwę przekonwertowaną na wielkie litery, podczas gdy pozostali nie:
query {
users {
name
@passOnwards(as: "userName")
@applyField(
name: "_inArray"
arguments: {
value: $userName
array: ["Leo", "John", "Peter"]
}
passOnwardsAs: "isSpecialUser"
)
@unless(
condition: $isSpecialUser
)
@strUpperCase
}
}...co daje:
{
"data": {
"users": [
{
"name": "Leo"
},
{
"name": "MARTIN"
},
{
"name": "Peter"
}
]
}
}Prev