【发布时间】:2018-03-21 11:41:44
【问题描述】:
我正在尝试返回创建一个分页列表。我使用 graphql 来查询数据。通过我的查询,我传递了我需要的记录数(在一个名为 first 的变量中)和最后获取的记录的 ID(在一个名为 after 的变量中)。现在我设法编写了一个查询(注意我使用了mongoose)来获取记录。现在我需要做的是获取相关信息来执行分页,如hasNextPage、hasPreviousPage、currentPage 和totalPages。
要获取大部分这些信息,我需要获取数据库中的记录总数。为此,我需要发送另一个数据库请求。
我还需要知道记录在表中的位置。不知道怎么做。
这是查询:
new Promise((resolve, reject) =>
Company.where('_id')
.gt(after)
.limit(first)
.lean()
.exec((error, doc) => {
if (error) {
reject(error);
}
resolve({
edges: doc,
pageInfo: {
hasNextPage: '...',
hasPreviousPage: '...',
currentPage: '...',
totalPages: '...'
}
});
}))
知道如何有效地做到这一点吗?
【问题讨论】: