繁体   English   中英

如何在 Firestore 中“获取集合中的所有文档”?

[英]How to "Get all documents in a collection" in Firestore?

我从文档中看到了“获取集合中的所有文档”的示例代码。

import { collection, getDocs } from "firebase/firestore";

const querySnapshot = await getDocs(collection(db, "cities"));
querySnapshot.forEach((doc) => {
  // doc.data() is never undefined for query doc snapshots
  console.log(doc.id, " => ", doc.data());
});

但我想知道这是否真的会从集合中获取所有文档。

我以前使用过 DynamoDB,在 DynamoDB 中,您不能一次获取表中的所有项目,如果数据集太大,您必须分页(发送多个请求)才能获取表中的所有项目。 例如,如果所有项目的大小为 10MB,则您必须发送 10 个请求才能获取所有项目。

我想知道这个限制是否也适用于 Firestore? 即使大小像 1GB,我真的可以在一个请求中获取一个集合的所有数据吗?

我想知道这是否真的会从集合中获取所有文档。

是的,它会的。 事实上,这正是为什么该代码示例出现在关于获取集合中所有文档的文档中的原因。

如果您认为此文档数量可能会超出连接或设备可以处理的数量,您可以限制检索的最大文档数量 如果您想选择显示更多文档,您可以实现基于光标的分页

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM