我正在尝试创建一个分页,我想查询具有偏移和限制的项目,这些项目是动态传递的(在UI中单击时)。 我正在使用收藏品。有没有办法从索引和限制开始查询数据,例如5个项目?
我正在尝试以下方法:
import { AngularFirestore } from 'angularfire2/firestore';
//other code
public getData(offsetFrom, offsetTo) {
this.fromQuery$ = this.db.collection('transactions', (ref) => (
ref.where('fromAddress', '==', this.fromAddress)
.orderBy('date', 'asc')
// I want to start from item number, but maybe not possible using angularfirestore
// where startAt accepts param - field value
.startAt(3).limit(2))).valueChanges();
}
我不想选择所有项目,因为它们可能很多,我想在点击下一个/上一个项目按钮时加载例如5个项目。
答案 0 :(得分:1)
无法从索引开始。您必须使用DocumentSnapshot
和startAt
功能。实施例
public getData(doc: DocumentSnapshot, limit) {
this.fromQuery$ = this.db.collection('transactions', (ref) => (
ref.where('fromAddress', '==', this.fromAddress)
.orderBy('date', 'asc')
.startAt(doc).limit(limit))).valueChanges();
}

您可以在官方文档https://angularfirebase.com/lessons/infinite-scroll-firestore-angular/
中找到类似的内容