我正在使用 Netflix 的 DGS 框架来构建 java graphqQL 服务。我尝试使用数据加载器(https://netflix.github.io/dgs/data-loaders/),只要父类型是顶级属性(即查询的直接子级),它就可以正常工作。
例如,考虑以下架构:
type Person{
location: Location
preferences: Preferences
}
type Location {
x: Int
}
type Preferences {
typeA: TypeAPreferences
typeB: TypeBPreferences
}
如果我尝试对 1 级类型的孩子使用数据加载器,它工作正常,例如:
@DgsData(parentType = "Person" field="location")
public Location loadLocation(DgsDatafetchingEnvironment dfe){
... //use data loader here
但是,如果父类型不是级别 1 ,则永远不会调用数据加载器(不会引发错误)。例子:
@DgsData(parentType = "Preferences" field="typeA")
public TypeAPreferences loadTypeAPreferences(DgsDatafetchingEnvironment dfe){
... //use data loader here
想知道其他人是否能够成功地完成这项工作,以及我是否在这里遗漏了什么导致它无法工作?