【发布时间】:2019-10-06 23:02:00
【问题描述】:
在我的应用程序中,我有一个需要“或”条件的列表。但是,作为docs say:
在这种情况下,您应该为每个 OR 条件创建一个单独的查询,并将查询结果合并到您的应用中。
因此,在我的服务中,我管理着两个查询并将它们作为一个单一的可观察列表呈现给消费者。
问题在于更新。我可以选择做额外的工作来匹配需要更新到正确集合的项目,这样我就可以执行以下操作:
myCollection.doc(item.id).update(item);
或者我可以让这更简单,更简单:
angularFirestore.doc(`path/to/${item.id}`).update(item);
我假设第一种方法会导致更快的更新,因为我使用的是相同的参考,它会立即乐观地更新。并且后者会更慢,因为它会通过更新持久层来更圆润,然后集合引用会在稍后得到通知(可能仍然是一小段时间)。
然而,以上所有都是假设。我只是用一些随机实例来支持这一点,我发现更新或删除需要一两秒钟才能显示在视图的其他部分,但我无法实际检查该过程。
有谁知道以上是否正确?我应该做额外的工作来编写集合引用还是 angularfire(和/或 firestore)处理这个并让它们在引擎盖下有效地进行相同的操作?
【问题讨论】:
标签: javascript angular performance google-cloud-firestore angularfire