在从javascript firebase数据库阅读数据时,如何读取嵌套的多个引用?

ql3eal8s  于 2023-01-27  发布在  Java
关注(0)|答案(1)|浏览(131)

在从javascript firebase数据库阅读数据时,如何读取嵌套的多个引用?

var refEmanet = firebase.database().ref('emanet');
// Add ref of child if any
refEmanet.on('value', function(snapshot) {
    var icerik="" 
    var no=1;
    snapshot.forEach((child)=>{
        
        if(child.val().geriVermeTarihi!=0){
            dataArray[no]=child.val();
                  console.log(child.val().isbn);
        icerik+='<tr>';
            icerik+='<td>'+no+'</td>';
const dbRef2 = firebase.database().ref();
            dbRef2.child("kitaplar").child(child.val().kitapId).get().then((snapshot2) => {
                if (snapshot2.exists()) {
                    var no1=0;
                        if(snapshot2.key==child.val().kitapId){
                    console.log(snapshot2.val().kitapAdi);
                    icerik+='<td>'+snapshot2.val().kitapAdi+'</td>'; 
                    no1++;
                    }
                    
                    

                } else {
                    console.log("No data available");
                }
                }).catch((error) => {
                    console.error(error);
                });
           
            icerik+='<td>'+child.val().isbn+'</td>';

            const dbRef3 = firebase.database().ref();
            dbRef3.child("ogrenciler").child(child.val().ogrId).get().then((snapshot3) => {
                if (snapshot3.exists()) {
                    
                    console.log(snapshot3.val());
                    icerik+='<td>'+snapshot3.val().ad+' '+snapshot3.val().soyad+'</td>'; 
                    

                } else {
                    console.log("No data available");
                }
                }).catch((error) => {
                    console.error(error);
                });

//            icerik+='<td>'+child.val().ogrId+'</td>';
            icerik+='<td>'+child.val().emanetTarihi+'</td>';
            icerik+='</tr>';
            no++;  
        }

    });

   console.log(snapshot.val());
    $('#ex-table').append(icerik);

});

我们可以不嵌套在firebase实时数据库中吗?我不能解决这个问题。正如你在表中看到的,数据没有到来。但是我可以从日志中读取数据。我该如何解决这个问题?

0pizxfdo

0pizxfdo1#

让我的表格=文档.按标识获取元素('ex-table').按标记名获取元素('tbody')[0];

let row = myTable.insertRow();
              let cell1=row.insertCell(0);
              let cell2=row.insertCell(1);
              let cell3=row.insertCell(2);
              let cell4=row.insertCell(3);
              let cell5=row.insertCell(4);
              let cell6=row.insertCell(5);
              let cell7=row.insertCell(6);
              let cell8=row.insertCell(7);
              let cell9=row.insertCell(8);
              cell1.innerHTML=no
              .
              .
              .

我就是这么解决的。

相关问题