graphql - graphql 突变反应类型
问题描述
我们的服务中有很多突变,所有这些突变都返回相同类型的响应,例如:
export default new GraphQLObjectType({
name: 'MessageResponse',
fields: () => ({
message: {
type: GraphQLString,
},
}),
});
我的问题是我可以为所有这些突变返回这种类型作为最佳实践,还是我必须为每个突变创建单一类型?
解决方案
在这种情况下,您希望拥有不同类型的唯一原因是,如果您需要它resolve
为您的消息字段实现不同的功能。如果不是这种情况,那么使用相同的类型是完全可以的。
另外,请记住,也可以只返回根级别的标量。例如,您的 Mutation 类型可能如下所示:
new GraphQLObjectType({
name: 'Mutation',
fields: () => ({
someMutation: {
type: GraphQLString,
},
}),
})
这并不总是一个好主意(例如,如果您预计将来需要返回其他信息)。但是,值得指出的是,这是可能的。
推荐阅读
- node.js - Nginx 在尝试反向代理 nodejs 服务器时仅在端口 80 上工作
- php - 将 orderBy() 与 getAll() 一起使用;
- r - R 的 data.table 因大数据的因子子集而崩溃
- sql - SQL Server 中的行级动态数据屏蔽
- java - 为什么我的第 50000 个数字的 BigInteger 斐波那契数与本网站不匹配?
- powershell - Powershell 函数调用在 Windows 10 上使用 powershell v7 导致缺少函数错误
- c# - 列表
> 除了()列表 > 比较 HashSet 列表 - firebase - Firebase 身份验证 - 如何更改自定义域
- python - 在pygame中沿x轴拖动对象
- c - 运行 10 秒的 while 循环