如何在解析函数 GraphQL 中传递两个查询?
Posted
技术标签:
【中文标题】如何在解析函数 GraphQL 中传递两个查询?【英文标题】:how to pass two queries in resolve function GraphQL? 【发布时间】:2019-04-18 16:57:24 【问题描述】:今天我在解析函数 (GraphQL) 中的 db(drop) 操作中遇到问题。代码如下。
dropAuthor:
type: authorType,
args: id: idType,
async resolve(parent, args)
Book.deleteMany(authorId: args.id).find();
return Author.deleteOne(_id: args.id);
GraphiQL 查询如下
mutation
dropAuthor(id:"5bed7c23bff55c1086a7b4d4")
id
每当我尝试删除作者表单集合时,它只删除作者,并且记录的书籍保持不变。这段代码有什么问题?
【问题讨论】:
【参考方案1】:dropAuthor:
type: authorType,
args: id: idType ,
async resolve(parent, args)
let deleteBooks = Book.deleteMany( authorId: args.id ).find();
let deleteAuthor = Author.deleteOne( _id: args.id );
return Promise.all([deleteBooks, deleteAuthor]);
试试这个代码。
【讨论】:
以上是关于如何在解析函数 GraphQL 中传递两个查询?的主要内容,如果未能解决你的问题,请参考以下文章
ReactJS/Javascript/Graphql/React-apollo:传递查询变量
graphql.GraphQLSchema:使用啥类型的参数来获取查询以传递给 mongo db.collection.find 来解析查询