【问题标题】:How to get all the keys from a specific doc of a collection in firestore?如何从firestore中集合的特定文档中获取所有密钥?
【发布时间】:2018-12-25 17:17:37
【问题描述】:

我已经学习了 Firestore CRUD。如果文档的字段已知,则很容易从文档中获取价值。我的问题是如何获取特定文档拥有的键列表。我需要它,因为我想在表格中显示字段和值。如果我以后在同一个文档中添加更多字段,那么表格将自动更新为新的字段和值。

谢谢。

【问题讨论】:

    标签: reactjs firebase redux google-cloud-firestore


    【解决方案1】:

    如文档中所述,您可以使用文档引用的get() 方法获取文档快照,然后使用快照的data() 方法将文档中的所有数据作为对象获取。

    https://firebase.google.com/docs/firestore/query-data/get-data#get_a_document

    var docRef = db.collection("users").doc("alovelace");
    
    docRef.get().then(function(doc) {
        if (doc.exists) {
            // Here you can get your data
            console.log("Document data:", doc.data());
        } else {
            // doc.data() will be undefined in this case
            console.log("No such document!");
        }
    });
    

    然后你有一个代表你的文档数据的键值对象。

    【讨论】:

    • 此代码仅输出值。但我需要密钥(第一个,最后一个,出生)作为输出。
    • @Sadhon “只有价值”是什么意思?它输出像{first: "Ada", last: "Lovelace", born: 1815} 这样的对象。要获取密钥,请使用Object.keys(obj) 获取密钥数组。
    • 如果你想从对象中获取key,使用:const key = Object.keys(doc.data())
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-08-08
    • 2021-07-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-05
    相关资源
    最近更新 更多