【发布时间】:2018-01-09 01:29:42
【问题描述】:
我阅读了所有 graphql 的文档和至少 4 个解释 graphql 查询和变异概念的博客,但是我在这些资源中没有发现为什么我们必须使用查询来获取数据,以及为什么要使用我们必须使用突变来提交数据?
看看他们的方案,他们在描述根查询/突变,然后定义类型+解析器方面看起来非常相似。查询和突变都是这样写的。
为什么在组合看起来很相似的情况下不能使用mutation来获取数据,或者使用query来提交数据?
查询:
const RootQuery = new GraphQLObjectType({
name: 'Root',
fields: () => ({
viewer: {
type: Viewer,
resolve: () => getViewer()
}
})
});
变异:
var MutationType = new GraphQLObjectType({
name: 'ArticleGraph Mutations',
description: 'These are the things we can change',
fields: () => ({
deleteArticle: {
type: ArticleType,
description: 'Delete an article with id and return the article that was deleted.',
args: {
id: { type: new GraphQLNonNull(GraphQLInt) }
},
resolve: (value, { id }) => {
return ArticleServices.delete(id);
}
}
}),
});
【问题讨论】:
标签: javascript reactjs graphql