0
graphqlクエリでネストフラグメント(再帰または無制限の展開)を試みています。しかし、graphqlスキーマは私のクエリを有効と見なさないか、フラグメント定義が冗長に見えます。私の希望graphql応答構造は次のとおりです。graphql内のフラグメントのネスト
`
{
"data":{
"availability":{
"mon":{
"open":"5.00 a.m.",
"close":"10.00 p.m.",
"allday":false,
"closed":false
},
"tue":{
"open":"5.00 a.m.",
"close":"10.00 p.m.",
"allday":false,
"closed":false
},
"wed":{
"open":"5.00 a.m.",
"close":"10.00 p.m.",
"allday":false,
"closed":false
},
"thu":{
"open":"5.00 a.m.",
"close":"10.00 p.m.",
"allday":false,
"closed":false
},
"fri":{
"open":"5.00 a.m.",
"close":"10.00 p.m.",
"allday":false,
"closed":false
},
"sat":{
"open":"5.00 a.m.",
"close":"10.00 p.m.",
"allday":false,
"closed":false
},
"sun":{
"open":"5.00 a.m.",
"close":"10.00 p.m.",
"allday":false,
"closed":false
}
}
}
}
`
可用性がなど、火曜、
可用性と 月を入力した
がデータイプを持っている
アプローチ1:これはgraphqlで有効な構文ではありません。 graphqlでエラーが発生します(この方法を入れ子にはできません)
`
fragment Hours on Day {
open
close
allday
closed
}
fragment DailyAvailability on Availability {
mon
tue
wed
thu
fri
sat
sun
}
query {
availability {
... DailyAvailability {
... Hours
}
}
}
`
アプローチ2:これは動作しますが、私はそれぞれ別々の日に時間を広めるために持っているように冗長なようです。
`
fragment Hours on Day {
open
close
allday
closed
}
fragment DailyAvailability on Availability {
mon {... Hours}
tue {... Hours}
wed {... Hours}
thu {... Hours}
fri {... Hours}
sat {... Hours}
sun {... Hours}
}
query {
availability {
... DailyAvailability
}
}
`
私は私の最初のアプローチで行うことを意図したとおりネスト断片への道があるかどうかをお勧めしてください。