我正在评估用Firestore替换部分SQL数据库的可行性,到目前为止,这是一种乐趣!
我想知道在列表中为给定页面提供可收藏链接的最佳方法是什么?我已经成功实现了分页,并发现我需要维护
lastVisible: firebase.firestore.DocumentSnapshot[] = []
能够像这样来回遍历分页列表:
if (this._paginator._pageIndex - 1 in this.lastVisible) {
return ref.orderBy('date', 'desc').startAfter(this.lastVisible[this._paginator._pageIndex - 1]).limit(this._paginator.pageSize)
} else {
return ref.orderBy('date', 'desc').limit(this._paginator.pageSize)
}
如果我理解正确,我可以将整个doc或索引使用的值提供给startAfter和startAt方法。无论哪种方式,为了提供列表的深层链接,在第245页打开,我需要在URL中传递245个值才能将这个值拉下来?
或者我需要重新查询从0到xxx页面的所有项目并记录所有最后的项目?
有任何想法如何最好地解决这个问题?
有没有办法只使用数字索引,可以从页面和页面大小计算出来?