簡體   English   中英

Firestore 取消訂閱不是功能

[英]Firestore unsubscribe is not a function

我在理解分離偵聽器的 unsubscribe() 函數用法時遇到了一些麻煩。 每次用戶單擊按鈕顯示表以更改視圖選項時,我都希望分離偵聽器。 其實這是我的代碼。 以前查詢被稱為取消訂閱,如官方 Firestore 文檔中所述(我還在我的項目中測試了文檔中的相同示例代碼),並且在控制台日志中始終返回unsubscribe is not a function

let query;

$(".btnShowTable").on("click", function () { 
   if(typeof query != "undefined") query.unsubscribe();
   createTable(param);
});

function createTable(param) {
   query = db.collection("test1/test2/"+param).orderBy("dataora", "desc").limit(10);
   query.onSnapshot(function (querySnapshot) {
      querySnapshot.docChanges().forEach(function (change) {
   // get datas
   });
 });

}

我應該在我的代碼中更改什么?

query是一個Query類型的對象,你可以從 API 文檔中看到它沒有unsubscribe()函數。 您需要做的是按照文檔中的說明進行操作 它說onSnapshot()返回一個取消訂閱函數以在取消訂閱時調用。

// subscribe to query results
const unsubscribe = query.onSnapshot(...)

// later, unsubscribe the listener
unsubscribe()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM