如何在 GraphQL 中创建删除突变?
How to create a delete mutation in GraphQL?
Whosebug!
一天前,我开始学习一门新东西 - GraphQL。
现在我知道如何使用 GraphQL 从数据库中添加和读取对象。我试图找到问题 "how to remove an object from database" 的答案。但这不是运气。你能帮我解决这个 "hard"(适合你)的问题吗?
感谢您的回答!
我找到了!也许有人需要答案。
使用Model.findByIdAndDelete(id, options, callback);
我的代码:
deleteImage: {
type: ImageType,
args: {
id: { type: GraphQLID }
},
resolve(parent, args) {
return Image.findByIdAndDelete(args.id);
}
}
有效!
这可能是解决此问题的另一种方法。我正在使用 Graphql 构建一个实时聊天应用程序,当我遇到这个解决方案时,我试图让用户能够删除他们的消息。
let messages = []
My definitions:
type Query {
messages: [Message!]
}
type Mutation {
deleteMessage(id:String!):String
}
My resolvers:
Query: {
messages: () => messages,
}
Mutation: {
deleteMessage: (parent, {id}) => {
let ID = parseInt(id)
messages = messages.filter((message) => message.id !== ID);
return id;
}
}
我查询消息并将它们放入名为 messages 的数组中,然后在用户需要时
从前端删除消息 action 将消息的 id 发送到服务器
然后我使用上面的过滤方法来删除指定的消息。
Whosebug!
一天前,我开始学习一门新东西 - GraphQL。 现在我知道如何使用 GraphQL 从数据库中添加和读取对象。我试图找到问题 "how to remove an object from database" 的答案。但这不是运气。你能帮我解决这个 "hard"(适合你)的问题吗?
感谢您的回答!
我找到了!也许有人需要答案。
使用Model.findByIdAndDelete(id, options, callback);
我的代码:
deleteImage: {
type: ImageType,
args: {
id: { type: GraphQLID }
},
resolve(parent, args) {
return Image.findByIdAndDelete(args.id);
}
}
有效!
这可能是解决此问题的另一种方法。我正在使用 Graphql 构建一个实时聊天应用程序,当我遇到这个解决方案时,我试图让用户能够删除他们的消息。
let messages = []
My definitions:
type Query {
messages: [Message!]
}
type Mutation {
deleteMessage(id:String!):String
}
My resolvers:
Query: {
messages: () => messages,
}
Mutation: {
deleteMessage: (parent, {id}) => {
let ID = parseInt(id)
messages = messages.filter((message) => message.id !== ID);
return id;
}
}
我查询消息并将它们放入名为 messages 的数组中,然后在用户需要时 从前端删除消息 action 将消息的 id 发送到服务器 然后我使用上面的过滤方法来删除指定的消息。