【发布时间】:2019-05-14 04:38:26
【问题描述】:
我在 graphql 中编写 API 时遇到了一些困难。
我的 api 中的每个响应看起来都差不多。 所以理想情况下,这将是 graphql 类型:
type Response {
success
data {
... always different
}
errors {
path
message
}
}
但是因为这里的数据字段总是不同的。每个突变/查询都应该有自己的响应类型(如果我正确理解了 graphql)。
所以对于登录,这是我使用转换器函数创建的类型:
type LoginResponse {
success
data {
user
token
}
errors {
path
message
}
}
现在在我的前端,我想使用以下片段,因为这些属性始终存在于每个响应中。
fragment Response on LoginResponse {
success
errors {
path
message
}
}
所以这里已经显示了我遇到的问题,您还可以使用片段定义它的父类型。因此,我必须创建与单独响应类型一样多的单独片段。
是否有人可能已经为此苦苦挣扎,或者是否有我没有看到的最佳实践
【问题讨论】:
标签: graphql apollo graphql-js graphql-tag