Graphql buildSchema和makeExecutableSchema之间有什么区别

Graphql buildSchema和makeExecutableSchema之间有什么区别,graphql,apollo,graphql-js,Graphql,Apollo,Graphql Js,来自graphql包的buildSchema与来自graphql工具包的makeExecutableSchema之间有什么区别 除了它们来自两个不同的包之外,因为buildSchema来自,而makeExecutableSchema来自,它们的功能也略有不同 buildSchema从模式语言构建模式对象。它只需要一大串类型定义作为参数 makeExecutableSchema将模式和解析程序结合起来,生成可执行模式。它是一个软件包的一部分,使得在编写解析器的同时更容易使用模式语言。因此,您可以定

来自
graphql
包的
buildSchema
与来自
graphql工具
包的
makeExecutableSchema
之间有什么区别

除了它们来自两个不同的包之外,因为
buildSchema
来自,而
makeExecutableSchema
来自,它们的功能也略有不同

buildSchema
从模式语言构建模式对象。它只需要一大串类型定义作为参数

makeExecutableSchema
将模式和解析程序结合起来,生成可执行模式。它是一个软件包的一部分,使得在编写解析器的同时更容易使用模式语言。因此,您可以定义类型和解析器,并将它们传递给
makeExecutableSchema
。您可以将一组模式定义传递给它,这样您就可以将多个模式合并在一起,并对其进行模块化


查看他们构建GraphQL服务器的建议方法。

我认为
buildSchema
起初并不存在,因此它们是相同的,只是后来添加了
buildSchema
,但我不必传递解析程序,那么在这种情况下有什么区别呢您必须将解析程序传递给
makeExecutableSchema
。它们是必需的。这是在使用
GraphQL工具时构建GraphQL服务器的一种方法。您不必这样做,这样就可以使用
buildSchema
,并将解析器作为选项传递给GraphQL端点。