首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >数据何时才能真正在消防局中传输?在文档快照中?或者直到调用了.data()或.get()?

数据何时才能真正在消防局中传输?在文档快照中?或者直到调用了.data()或.get()?
EN

Stack Overflow用户
提问于 2018-09-27 12:49:04
回答 1查看 44关注 0票数 0

我正试图决定如何构造应用程序的权限。这其中很大一部分归结于标题中的问题。具体来说,如果我打电话:

const tasks = db.collection('tasks').where('canRead', 'array-contains', firebase.auth().currentUser.uid).get()和检索一个文档快照数组,是每个快照实际传输的数据,或者是在我遍历该数组之前不传输的数据:

for(let taskSS of tasks.docs) { ...,并最终用let task = taskSS.data()调用.data()?

我问的原因是,如果我有一个具有大量用户的任务文档,这些用户可以获取并列出该任务,我不希望在最初的db.collection('tasks').where('canRead', 'array-contains', firebase.auth().currentUser.uid).get()调用中传输所有这些数据。

如果数据在调用.data()或.get()之前没有实际传输,那么我可以将所有任务数据放在task.public中,然后执行let task = taskSS.get('public')

有人知道什么时候实际的数据被转移到内存中吗?数据实际上是“在”文档快照中,还是在您使用.data()或.get()请求该数据之前不传输?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-09-27 13:34:53

当调用get()onSnapshot()时,数据将从数据库传输到应用程序。当您得到文档时,每个DocumentSnapshot包含文档的所有数据。调用document.data()只返回它已经拥有的数据的映射。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52537423

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档