有没有办法可以通过创建多个rootQuery对象来重构rootQuery对象并将它们组合在一起?
所以现在我们有一个rootQuery充满了多个根,然后我们创建了一个模式,说我们有一个根查询。我们写的是
var schema = new GraphQLSchema({
query: RootQuery
})
我想要的是什么
var schema = new GraphQLSchema({
query: [RootQuery1, RootQuery2]
})
有没有办法在GraphQL中执行此操作?它将有助于重构。
答案 0 :(得分:5)
否它不能GraphQLSchema
queryType
只接受GraphQLObjectType
RootQuery
,它不能接受GraphQLObjectType
是具有多个queryType
所有类型都应在主RootQuery
export class GraphQLSchema {
_queryType: GraphQLObjectType; // accepts GraphQLObjectType not array
_mutationType: ?GraphQLObjectType;
_subscriptionType: ?GraphQLObjectType;
_directives: Array<GraphQLDirective>;
_typeMap: TypeMap;
_implementations: { [interfaceName: string]: Array<GraphQLObjectType> };
_possibleTypeMap: ?{
[abstractName: string]: { [possibleName: string]: boolean }
};
以下是GraphQLSchema的源代码
https://github.com/graphql/graphql-js/blob/master/src/type/schema.js#L58
{{1}}