删除firestore上的实时侦听器



我对firebase有点陌生,不太了解如何分离实时侦听器。我已经阅读了官方文档,但仍然不明白如何做到这一点。如果有人能为我简化它,并创建一个函数来启动监听器,另一个函数用来停止它,那将是非常棒的。

要启动监听器,我只需要调用start((

function start(){
firebase.firestore().doc("users/x").onSnapshot(function(doc) {
console.log(doc.data());
});
}

但为了阻止侦听器,我试图调用函数并在其中添加注释,但它不起作用

//Doesn't work
function stop(){
firebase.firestore().doc("users/x").onSnapshot(function(doc) {
//Not putting anything in here
});
}

以下应该可以做到:

var fbListener = null;
function start(){
fbListener = firebase.firestore().doc("users/x").onSnapshot(function(doc) {
console.log(doc.data());
});
}
function stop(){
fbListener();
}

看看这里和这里的文档:CCD_;可以被调用以取消快照侦听器的取消订阅函数";。

最新更新