我浏览了一些使用
graphql-tools
包和 makeExecutableSchema
命令的 GraphQLJS 教程,其他一些使用 graphql
包并使用新的 GraphqlSchema
(作为对象)的教程,其他使用相同的 graphql 包但命令 buildSchema
。
嗯,这三个似乎工作得很好(好吧,他们只是以不同的方式构建模式。)。
问题:是否与“最佳实践”有某种关系或导致“最佳性能”?或者这绝对是我不应该担心的事情?
谢谢你:)
我认为这并不重要,您应该使用您和您的工具最熟悉的任何东西。
例如,如果您也为 Relay 使用相同的架构,这可能很重要。由于 Relay Compiler 使用模板文字(`...`)语法作为模式,如果它也在服务器端,那就更容易了。
我使用
buildSchema()
,因为它很容易在版本控制中跟踪,而且我不需要动态地将内容添加到架构中。