我们正计划向阿波罗GraphQL迁移,因为阿波罗联邦功能允许在单个GraphQL API中统一多个微服务。然而,我们目前使用的是TypeGraphQL,我认为它们是不兼容的。原因是在Apollo联盟中,我看到您使用特殊的@key属性
/* example from docs */
const typeDefs = gql`
type Query {
me: User
}
type User @key(fields: "id") {
id: ID!
username: String
}
`;但是,TypeGraphql的架构是从类自动生成的。有没有办法仍然使用这两种技术,或者它们是相互排斥的?
发布于 2020-09-03 21:25:49
Typegraphql已经添加了对它的支持,请查看此处的示例https://github.com/MichalLytek/type-graphql/tree/master/examples/apollo-federation
发布于 2021-07-07 15:29:31
虽然它通过使用@Directive修饰器得到了支持,但在大型项目中使用它并不是一件容易的事情。我目前正在一个复杂的项目上实现它,我对引用另一个模式中的某个类型所需的大量样板代码并不满意。这里有一些关于添加更好的支持的讨论:https://github.com/MichalLytek/type-graphql/issues/351#issuecomment-549156066如果我很快就有时间的话,我计划添加支持。
但它仍然没有实现。我已经创建了一个repo,您可以在其中看到最小的示例(类似于type-graphql repo中的一个):https://github.com/hrvojepavlinovic/apollo-federation-type-graphql
https://stackoverflow.com/questions/63688732
复制相似问题