Firestore取消订阅更新



我在YouTube上以Google Cloud Firestore为例,成功地获得了实时更新。然而,我不知道如何取消订阅更新,因为视频中没有解释。我阅读了文档来创建一个unsubscribe((函数,但它对我不起作用

	getRealtimeUpdates = function(document) {
		firestore.collection("collection_name")
			.onSnapshot(function(querySnapshot) {
			querySnapshot.forEach(function(doc) {
				if (doc && doc.exists) {
					const myData = doc.data();
					// DO SOMETHING
				}
			});
		});
	}

firestore.collection().onSnapshot()函数返回一个取消订阅函数。只要叫它,你就应该是guchi。

你也可以在这里找到另一个例子:如何删除DocumentSnapshot事件的侦听器(Google Cloud FireStore(

下面是我创建的一个应该可以工作的片段:

let unsubscribe;
getRealtimeUpdates = function(document) {
		unsubscribe = firestore.collection("collection_name")
			.onSnapshot(function(querySnapshot) {
			querySnapshot.forEach(function(doc) {
				if (doc && doc.exists) {
					const myData = doc.data();
					// DO SOMETHING
				}
			});
		});
	}

// unsubscribe:

unsubscribe();

相应Firebase文档的路径:

https://firebase.google.com/docs/reference/js/firebase.firestore.CollectionReference#onSnapshot

返回可以调用取消订阅函数来取消快照侦听器。

最新更新