如何在 graphql-compose 中扩展模式

How to extends schema in graphql-compose

我正在使用 graphql-compose 库。我正在使用类型作曲家创建 类 并将其添加到模式作曲家并构建模式。

如何添加(合并)另一个模式到模式编辑器?或者如何创建可执行模式并添加(合并)由模式作曲家构建的模式。

我需要添加的架构来自apollo-upload-server。它的文档声明架构如下:

const schema = makeExecutableSchema({
  typeDefs: `scalar Upload`,
  resolvers: { Upload: GraphQLUpload }
})

这个解决方案对我有用:

import { mergeSchemas } from 'graphql-tools'
import { schemaComposer } from 'graphql-compose'
import {GraphQLUpload} from 'apollo-upload-server'

const composerSchema = schemaComposer.buildSchema()

const uploadSchema = makeExecutableSchema({
  typeDefs: `scalar Upload`,
  resolvers: { Upload: GraphQLUpload }
})

const graphqlSchema = mergeSchemas({
    schemas: [composerSchema, uploadSchema]
})