在我的项目 GraphQL 架构中,对象AllowedPeriod
(这只是两个字段startsAt/endsAt)可以到达图形的不同对象内。
生成查询时,apollo 会为每个查询创建一个新类型<parent_object>.AllowedPeriod
例如,在GetDevicesQuery
, the AllowedPeriod
可以在里面devices
, actions
or group
,因此生成以下类。
GetDevicesQuery.AllowedPeriod
GetDevicesQuery.AllowedPeriod1
GetDevicesQuery.AllowedPeriod2
有没有一种方法可以告诉 apollo 这些是相同的类型,并且它不应该为它们中的每一个生成类型?
我认为你可以使用 graphQL 片段来解决你的问题。 Apollo 应该为每个查询生成相同的片段类。
例如:
fragment AllowedPeriodFragment on AllowedPeriod {
startsAt
endsAt
}
query GetDevicesQuery() {
devices {
allowedPeriod {
...AllowedPeriodFragment
}
}
actions {
allowedPeriod {
...AllowedPeriodFragment
}
}
}
生成的片段可以通过fragments()方法访问。
它应该看起来像:device.fragments().allowedPeriodFragment()
or action.fragments().allowedPeriodFragment()
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)