我正在尝试在 firestore 中应用分页,我需要从集合集合中的hats doc中的items数组中获取前 5 个项目(总共 200 个项目) ,然后在下一次单击时我需要让他下一个 5 等等上。
testPagination = async () => {
const { currentPage, itemsPerPage } = this.state;
const { fetchCollectionsForPagesStart, match : { params } } = this.props;
const collectionId = params.collectionId;
const startAt = currentPage * itemsPerPage - itemsPerPage;
const docs = await firestore.collection("collections").orderBy('id').startAt(0).limit(itemsPerPage).get();
const data = docs.docs;
const items = docs.forEach( async docItem => {
console.log(await docItem.data());
})
}
当我点击我的渲染函数中的按钮时,我运行这个函数,
render()
{
return (
<button onClick={this.testPagination}>Test pagination </button>
);
}
但我的结果中总是有 200 个项目,那么我如何将 startAt() 和 limit() 应用于 firestore 中的项目数组。
这是我的数据库:
这个 console.log(await docItem.data()); 给我
注意:我正在接收帽子文档 ID,所以如果有办法访问带有 id 的帽子,我也需要一些帮助,我也尝试过
const docs = await firestore.doc(`collections/${collectionId}`).get();
const data = await docs.data();
但这不允许我应用 startAt() 和 limit()
12345678_0001
相关分类