如何删除 DocumentSnapshot 事件的侦听器(Google Cloud FireStore)
Posted
技术标签:
【中文标题】如何删除 DocumentSnapshot 事件的侦听器(Google Cloud FireStore)【英文标题】:How to remove listener for DocumentSnapshot events (Google Cloud FireStore) 【发布时间】:2018-03-20 10:32:13 【问题描述】:我是 Google Cloud FireStore 的新手。
Document 对象有一个函数调用onSnapshot 来附加一个DocumentSnapshot 事件的侦听器。
是否有移除该监听器的功能(如 offSnapshot)?如果没有,我该如何实现?
【问题讨论】:
【参考方案1】:在 web 和 node.js SDK 的情况下,调用 onSnapshot
会返回一个函数,您需要将其保存在一个变量中,并在您想要移除监听器时调用。
var unsubscribe = db.collection("cities").onSnapshot(function (querySnaphot)
// do something with the data.
);
// Stop listening to changes
unsubscribe();
其他 SDK 提供类似的功能。
参考https://firebase.google.com/docs/firestore/query-data/listen#detach_a_listener。
【讨论】:
在 ts angular 中做什么? 我们需要在 Angular 中这样做吗?以上是关于如何删除 DocumentSnapshot 事件的侦听器(Google Cloud FireStore)的主要内容,如果未能解决你的问题,请参考以下文章
Firestore 获取 DocumentSnapshot 的字段值
在 Flutter 中将 Firestore DocumentSnapshot 转换为 Map
从 documentSnapshot 获取 Cloud Firestore 文档参考