我在Firestore documentation for realtime listener上看到,我们可以查看快照之间的更改,并查看是否添加,删除或修改了每个文档。
我想知道如果仅将onSnapshot
附加到单个文档上是否可以看到更改的类型?
我尝试在单个文档侦听器上运行docChanges()
方法:
db.collection("matching").doc("user1").onSnapshot(async doc => {
doc.docChanges().forEach(function(change) {
if (change.type === "added") {
console.log("added: " + change.doc.data());
}
})
})
但是它产生了一个错误:
Uncaught (in promise) TypeError: doc.docChanges is not a function
我认为我无法在单个文档侦听器上运行docChanges()
。在那种情况下,那么如何查看单个Firestore文档实时侦听器的更改?
答案 0 :(得分:1)
否,API不会向您指示快照之间哪些数据或字段会发生变化。每当文档中任何地方发生更改时,您都只会得到回调。您必须比较以前的快照和当前的快照,才能自己找出答案。