考虑 2 个服务(A 和 B)。B 扩展了在 A 中定义的类型,但还添加了一个不在 A 中的新字段。但是,A 中返回该类型的解析器不会解析 B 引入的该字段(返回null
)。Apollo Docs提到 B 应该解析该字段,因为 B 引入了它,但这似乎不能正常工作,因为该字段总是解析为null
.
我正在使用 TS、TypeGraphql 并且有一个类似于示例文档的配置。
类型如下所示:
服务A
@Directive(`@key(fields: "_id")`)
@ObjectType()
export class Foo {
@Field(() => String)
readonly _id!: ObjectId;
// this field resolves fine because it was defined in A
@Field(() => Bar, { nullable: true })
bar?: Bar;
}
服务乙
@Directive('@extends')
@Directive(`@key(fields: "_id")`)
@ObjectType()
export class Foo {
@Field(() => String)
@Directive('@external')
readonly _id!: ObjectId;
// this field resolves to null
@Field(() => Baz, { nullable: true })
baz?: Baz;
}
有没有人对问题可能是什么有任何建议/有任何解决方案?