繁体   English   中英

如何在 Firebase Firestore 上获取一个字段?

[英]How can I get one field on Firebase Firestore?

朋友们好,我正在练习 Firestore 和 Firebase Auth,我只想阅读一个字段,但我做不到。 这可能很简单,但我在 Inte.net 中找不到任何东西。 有没有人可以帮助我。 有一个好的代码:)


我的一段代码

auth = Firebase.auth

private val db = Firebase.firestore.collection("user")


private fun getPic(){
val pic = db.document(auth.currentUser?.email.toString()).get(..?.) ....?..
}

我想读那个 URL

我想阅读那个网址

无法从 Firebase 文档 ( https://stackoverflow.com/a/48312562/1896015 ) 中获取一个字段。

您需要获取整个文档,这是异步完成的,然后处理接收到的包含整个文档数据的响应。

您还从集合中获取文档,在本例中是user ,它使整个路径成为user/{email}

从您的代码示例中,这可能看起来像这样:

private fun getPic() {
 val docRef = db.collection("user").document(auth.currentUser?.email.toString())
 docRef.get()
        .addOnSuccessListener { document ->
            if (document != null) {
                Log.d(TAG, "picUrl: ${document.data.picUrl}")
            } else {
                Log.d(TAG, "No such document")
            }
        }
        .addOnFailureListener { exception ->
            Log.d(TAG, "get failed with ", exception)
        }
}

在这种情况下,你只记录信息,但我想你会想要从 function 返回 picUrl。我建议查看 Kotlin 异步函数以了解不同的处理方法: https://kotlinlang.org/docs/async-编程.html#callbacks

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM