我有以下内容:
const typeDefs = `
type Request {
id: ID!
email: String!
totalCount: Int
}
type Mutation {
createRequest(email: String!): Request!
}
`;
export default typeDefs;
现在totalCount返回null。使用GraphQL,将TotalCount作为突变的响应返回的正确方法是什么。应该在请求模型中以某种方式包含totalCount吗?
答案 0 :(得分:1)
您已将totalCount
定义为每个Request
对象的属性,但totalCount
表示所有Request
个对象的数量。
在变异响应中允许其他数据的常见做法是让它返回一个包装器。例如:
type Mutation {
createRequest(email: String!): CreateRequestResponse!
}
type CreateRequestResponse {
request: Request!
totalCount: Int!
}
CreateRequestResponse
是一个包装器对象,可以包含客户端在响应中可能需要的任意属性。 totalCount
这里只是一个例子;你可以在那里添加任何属性。
有了这个,Request
类型的定义将是:
type Request {
id: ID!
email: String!
}
这是理想的,因为它只包含特定请求的属性。