【问题标题】:graphql mutation response typegraphql 突变反应类型
【发布时间】:2019-07-20 21:58:10
【问题描述】:

我们的服务中有很多突变,所有这些突变都会返回相同类型的响应:

export default new GraphQLObjectType({
  name: 'MessageResponse',
  fields: () => ({
    message: {
      type: GraphQLString,
    },
  }),
});

我的问题是,作为最佳实践,我是否可以为所有这些突变返回这种类型,或者我必须为每个突变创建单一类型?

【问题讨论】:

    标签: graphql graphql-js


    【解决方案1】:

    您希望在这种情况下使用不同类型的唯一原因是,如果您需要它为您的消息字段实现不同的resolve 函数。如果不是这样,那么使用相同的类型就完全没问题了。

    另外,请记住,也可以只返回根级别的标量。例如,您的 Mutation 类型可能如下所示:

    new GraphQLObjectType({
      name: 'Mutation',
      fields: () => ({
        someMutation: {
          type: GraphQLString,
        },
      }),
    })
    

    这并不总是一个好主意(例如,如果您预计将来需要返回其他信息)。但是,值得指出的是,这是可能的。

    【讨论】:

      猜你喜欢
      • 2020-01-19
      • 2019-11-18
      • 2017-12-20
      • 2020-01-31
      • 1970-01-01
      • 2020-09-22
      • 2021-08-20
      • 2017-09-18
      • 2020-12-09
      相关资源
      最近更新 更多