【发布时间】:2021-04-28 15:13:58
【问题描述】:
随着我的代码和 Flutter 编码经验的进一步发展。在使用 Firebase API 时,我遇到了不同类型的快照。我说的是 AsyncSnapshots、QuerySnapshots、DocumentSnapshots 和 DataSnapshots。如果还有更多请给他们命名。
我想知道,这些快照之间的确切区别是什么。
到目前为止,我认为 AsyncSnapshot 可能是异步拍摄的快照,这意味着小部件是在快照的数据可用之前构建的,因此使其异步(如果我错了,请纠正我) .这就是我的困惑开始的地方,快照到底是什么?他们每个人的“数据”是什么。 例如:为什么同一个函数不能在所有快照中检索所需的数据,而是只在特定快照上起作用。
为什么需要将数据从 QuerySnapshot 转换为 DocumentSnapshot 以使其可访问(如果我错了,请再次纠正我)? DocumentSnapshot 和 DataSnapshot 之间的确切区别是什么。当它们都返回 Maps 时,为什么它们的名称不同?
提前谢谢你。
【问题讨论】:
-
好问题!我在下面回答。由于我经常对此感到困惑,因此我尽量保持我的回答非常笼统,但如果您的特定用例有任何不清楚的地方,请告诉我。
-
非常感谢,对我帮助很大。