J'essaie de nid fragments (non-récursivité ou expansion illimitée) dans ma requête graphql. Mais, soit le schéma graphql ne considère pas ma requête comme valide, soit la définition du fragment semble redondante. Ma structure de réponse désirée graphql est:Imbrication de fragments dans 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
}
}
}
}
`
où la disponibilité est de type Disponibilité et mon, mar., etc. ont le même type jour
Approche 1: Ce n'est pas une syntaxe valide dans graphql . graphql jette l'erreur (ne permet pas l'imbrication de cette façon)
`
fragment Hours on Day {
open
close
allday
closed
}
fragment DailyAvailability on Availability {
mon
tue
wed
thu
fri
sat
sun
}
query {
availability {
... DailyAvailability {
... Hours
}
}
}
`
Approche 2: Cela fonctionne, mais il semble que je redondante dois répandre des heures chaque jour séparément.
`
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
}
}
`
Veuillez suggérer s'il y a un moyen d'imbriquer des fragments comme je l'ai l'intention de faire dans ma première approche.