Firebase Firestore 分离侦听器不起作用



我(认为我)正在按照有关如何在Firebase Firestore中分离侦听器的说明进行操作,但是在我的代码中侦听器仍处于活动状态。

// attaching a listener
this.dbTasks.where('completed', '==', true).onSnapshot(data => {...code...})
// detaching a listener
this.dbTasks.where('completed', '==', true).onSnapshot(() => {})

我错过了什么?

onSnapshot返回一个函数,您需要将该函数保存在变量中,并在要删除侦听器时调用该函数。

this.unsubscribe = this.dbTasks.where('completed', '==', true).onSnapshot(
  data => {...code...}
);

// Stop listening to changes
this.unsubscribe();

您正在做的实际上是创建一个不执行任何操作的第二个侦听器。

最新更新