Javascript 听元数据firestore
我对Firestore是个新手,学习很多东西。在我的学习道路上,我已经到达Firebase文档中的 这看起来非常有用,但我无法理解如何测试它。这是文档中的代码Javascript 听元数据firestore,javascript,firebase,google-cloud-firestore,Javascript,Firebase,Google Cloud Firestore,我对Firestore是个新手,学习很多东西。在我的学习道路上,我已经到达Firebase文档中的 这看起来非常有用,但我无法理解如何测试它。这是文档中的代码 db.collection("cities").doc("SF") .onSnapshot({ // Listen for document metadata changes includeMetadataChanges: true }, function(doc) { //
db.collection("cities").doc("SF")
.onSnapshot({
// Listen for document metadata changes
includeMetadataChanges: true
}, function(doc) {
// ...
});
我添加了我的简单更新命令来查看发生了什么,它每秒钟都在更新。我想知道它想给我什么?在什么情况下我可以使用它?为什么它每秒钟都在更新
firebase.firestore().collection("cities").doc("DC")
.onSnapshot({
// Listen for document metadata changes
includeMetadataChanges: true
}, function(doc) {
// ...
var docRef = firebase.firestore().collection('cities').doc('DC');
var updateTimestamp = docRef.update({
timestamp: firebase.firestore.FieldValue.serverTimestamp()
});
});
实际上你创造了现代无限循环 您订阅了
DC
文档的snapshotChanges
(用于数据和元数据),因此这意味着您将收到文档中的任何更改。当您第一次运行它时,当前数据将作为第一次运行订阅提供
然后在subscribe中,您更新同一文档,这意味着您的订阅将一次又一次地运行
firebase.firestore().collection("cities").doc("DC")
.onSnapshot({includeMetadataChanges: true}, (docSnapshot) => {
console.log(docSnapshot);
});
你能不能修改我的代码,使它只运行一次,这样我就可以理解我得到了什么。其次,我要创建一个单独的问题,因为我想使用
元数据列出在我的系统上仍处于脱机状态的条目。hasPendingWrites
,集合名-城市
,文档名-DC
我看到了,它是返回对象,我已经编辑了我的问题,我想如果我能到达那里,我将能够完全使用它。如果你想,我可以把它作为一个单独的question@user2828442我建议不要把这些问题混在一起,关于离线提交一个新的问题好吧,这里增加了一个新的问题-我建议忽略所有免费工作的请求(以及其他线程上的请求)。