Bud*_*ius 6 android apollo graphql apollo-client apollo-android
在我的项目GraphQL模式上,对象AllowedPeriod
(只有两个字段startsAt / endsAt)可以到达图形的不同对象内。
生成查询时,apollo会为每个查询创建一个新类型 <parent_object>.AllowedPeriod
例如,在GetDevicesQuery
中,AllowedPeriod
可以是内部devices
,actions
或者group
,因此产生以下的类。
GetDevicesQuery.AllowedPeriod
GetDevicesQuery.AllowedPeriod1
GetDevicesQuery.AllowedPeriod2
有没有办法告诉阿波罗这些类型是相同的类型,并且不应该为每个类型生成类型?
我认为您可以使用 graphQL 片段来解决您的问题。Apollo 应该为您的每个查询生成相同的片段类。
例如:
fragment AllowedPeriodFragment on AllowedPeriod {
startsAt
endsAt
}
query GetDevicesQuery() {
devices {
allowedPeriod {
...AllowedPeriodFragment
}
}
actions {
allowedPeriod {
...AllowedPeriodFragment
}
}
}
Run Code Online (Sandbox Code Playgroud)
生成的片段可以通过 fragment() 方法访问。
它应该看起来像:
device.fragments().allowedPeriodFragment()
或action.fragments().allowedPeriodFragment()
归档时间: |
|
查看次数: |
274 次 |
最近记录: |