如何使用下面的代码仅选择集合中的特定文档?

时间:2019-06-03 11:51:35

标签: javascript firebase google-cloud-firestore

所以下面的代码夸大了集合中“所有”文档中的数据,我用doc('Empire_State')替换了doc并尝试运行它,但没有获取任何数据。有没有办法获取特定文档而不是集合中的所有文档?

const buildingInfo = document.querySelector('#building-list');

function renderBldg(doc){
    let li = document.createElement('li');
    let address = document.createElement('span');
    let br1 = document.createElement('BR');
    let floors = document.createElement('span');
    let text1 = document.createTextNode(' floors');
    let br2 = document.createElement('BR');
    let owner = document.createElement('span')
    li.setAttribute('data-id', doc.id);
    address.textContent = doc.data().address;
    floors.textContent = doc.data().floors;
    owner.textContent = doc.data().owner;

    li.appendChild(address);
    li.appendChild(br1);
    li.appendChild(floors);
    li.appendChild(text1);
    li.appendChild(br2);
    li.appendChild(owner);


    buildingInfo.appendChild(li);

}

db.collection('default').get().then((snapshot) =>{
    snapshot.docs.forEach(doc => {
        renderBldg(doc);
    })

})

1 个答案:

答案 0 :(得分:1)

获取单个文档时,您无需进行迭代...因此就足够了

db.collection('default').doc('Empire_State').get().then((snap) =>{
   if (snap.exists) {
      console.log(`your doc: `, snap.data())
   }

})