簡體   English   中英

檢索子值並使用 firebase 與 javascript 進行比較

[英]Retrieve an child value and compare using firebase by javascript

    const uid = firebase.auth().currentUser.uid;

var query = firebase.database().ref("/user/").child(user.uid).orderByChild("l1").equalTo("bought ")
     query.on("value", function(snapshot) {
         var lg1=document.getElementById("lg1");
    var lg2=document.getElementById("lg2");
    var blg=document.getElementById("blg");
    lg2.style.display=" none";
    lg1.style.display="block"; 
    blg.style.display="block";
         
     });

我正在比較 firebase 實時數據庫中的子數據並使用快照 function 禁用啟用顯示但它不起作用我嘗試並研究了很多但我找不到完美的解決方案。

關於如何進行上述代碼的任何想法?

這是我的 firebase 實時數據庫的截圖

Firebase 實時數據庫

Firebase 查詢在您查詢的路徑下的直接子節點列表上工作。

由於您的查詢在/user/$uid上運行,因此查詢考慮的節點是emaill1pointsuid 對於其中的每一個,它都會查找子屬性l1並將該值與您指定的值進行比較。 但是這四個節點沒有l1屬性。

如果您希望能夠在/user/$uid的子節點中搜索它們的l1屬性,您需要 JSON 中的一個額外級別,這通常是通過調用push()生成的,如文檔中關於將節點添加到列表 所以你的 JSON 會變成

user: {
  "$uid": {
    "$pushid": { // 👈 new
      email: "...",
      l1: "...",
      points: ...,
      uid: "...",
    }
  }
}

使用該結構,您的查詢將起作用。

暫無
暫無

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

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