【发布时间】:2017-01-27 12:17:09
【问题描述】:
我正在研究GraphQL,在编写GraphQLObjectType 的fields 时,我对特定问题的不同实现感到有些困惑。
这两种实现有什么区别?
1.
var schema = new GraphQLSchema({
query: new GraphQLObjectType({
name: 'RootQueryType',
fields: { // as object
echo: {
type: GraphQLString,
args: {
email: { type: EmailType }
},
resolve: (root, {email}) => {
return email;
}
}
}
})
});
var ComplicatedArgs = new GraphQLObjectType({
name: 'ComplicatedArgs',
fields: () => ({ // as function
complexArgField: {
type: GraphQLString,
args: {
complexArg: { type: ComplexInput }
},
}
}),
});
【问题讨论】:
-
您具体指的是什么区别?第一个 sn-p 创建一个带有查询类型和可解析
echo字段的完整模式,第二个 sn-p 只创建一个带有complexArgField字段且没有解析器的对象类型。
标签: javascript graphql graphql-js