来自buildSchema
软件包的graphql
与来自makeExecutableSchema
软件包的graphql-tools
之间有何区别?
答案 0 :(得分:13)
除了buildSchema
来自official graphql-js package且makeExecutableSchema
来自Apollo之外,它们来自两个不同的包,因此它们也会略有不同。
buildSchema
从架构语言构建架构对象。它只需要一大串Type定义作为参数。
makeExecutableSchema
结合了模式和解析器来制作可执行模式。它是graphql-tools包的一部分,使得在编写解析器时更容易使用模式语言。因此,您可以定义类型和解析器,并将它们传递给makeExecutableSchema
。您可以将一组Schema定义传递给它,这样您就可以将多个模式合并在一起,进行模块化。
请参阅Apollo docs for graphql-tools,了解他们建议的构建GraphQL服务器的方法。