【发布时间】:2020-03-23 07:32:14
【问题描述】:
我想知道什么更好:
该示例是一个购物应用程序,它是关于主屏幕的,其中包含每个可用项目的列表。
A) 一个文档,例如“productList”,其中每个类别都包含一个地图,然后是另一个包含每个 productId 的地图和一个包含产品标题、展示图片和价格等数据的列表。
示例代码:
Stream stream = db.collection('products').document('productList').snapshots().asyncMap((list) => list.data);
或
B) 一个名为“产品”的集合中的许多文档存储数据。
示例代码:
Stream stream = db.collection('products').where('category', isEqualTo: "CategoryName").snapshots().map((list) => list.documents.map((doc) => doc.data));
(两者都在工作,但使用 B 我得到了 3 个产品 muuuuch 更多文档读取,因此我认为 A 会节省大量产品读取,但如果该方法可能存在问题,则提出问题)
非常感谢:)
【问题讨论】:
标签: javascript firebase google-cloud-firestore