firebase - 如何删除 DocumentSnapshot 事件的监听器 (Google Cloud FireStore)

标签 firebase google-cloud-platform google-cloud-firestore

我是 Google Cloud FireStore 的新用户。

Document 对象有一个函数调用 onSnapshot附加 DocumentSnapshot 事件的监听器。

是否有一个函数可以删除该监听器(例如 offSnapshot)?如果没有我该如何实现?

最佳答案

对于 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供引用。

关于firebase - 如何删除 DocumentSnapshot 事件的监听器 (Google Cloud FireStore),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46642652/

相关文章:

google-cloud-platform - 使用 kubectl 或 kubernetes api 获取服务的外部 ip

java - QueryListenOptions 的 ClassNotFoundException

ios - 使用哪个,addSnapshotListener() 或 getDocuments()

javascript - Firebase - 'pushWithPriority' - 和验证

javascript - 如何从云功能内部运行查询?

google-cloud-platform - Google Cloud Functions Java 11(测试版)运行时 - 性能问题

apache-spark - Dataproc 如何仅在主节点上运行初始化操作脚本并跳过在工作节​​点上运行

javascript - 无法通过将文档名称保存在对话流上下文中来向文档添加多个字段

ios - 如何解决 Ionic 4 到 IOS 应用程序中的错误 'EXC_CRASH (SIGKILL)'

javascript - Web 应用程序的 Firebase 实时数据库给出 SyntaxError