我正在尝试在Apollo中实现Relay Connections,但我在规范方面遇到了一些问题。
架构看起来像这样:
type PageInfo {
startCursor: String!,
endCursor: String!,
hasNextPage: Boolean!,
hasPreviousPage: Boolean!
}
type User : Node {
id: ID!
firstname: String
lastname: String
}
type UserConnection : Connection {
pageInfo: PageInfo!
edges: [UserEdge!]!
}
type UserEdge : Edge {
cursor: String!
node: User!
}
extend type Query {
users(first: Int, after: ID, order: String): UserConnection
}
假设我在db中有100个用户;当我使用limit ex.users查询时(第一个:10),PageInfo.endCursor指的是第10个边缘还是第100个边缘?
更多问题:
1.我应该进行另一个查询来获取hasPreviousPage,hasNextPage。
2.是否有任何具有类似结构的代码示例(带有解析器)?
3.有没有graphql聊天(gitter,irc)?
endCursor指的是第10个,即它等于结果中最后一个边的光标字段。
hasNextPage
和hasPreviousPage
。但无论你拿哪个,你都不需要在另一个查询中发出它,在一个查询中获取尽可能多的数据,这就是重点!apollographql.slack.com
和graphql.slack.com