首页 > 解决方案 > Firestore 循环的数据插入问题

问题描述

我是 Kotlin 编程的初学者。此代码是一种通过循环遍历包含文档路径的列表来逐一接收集合数据的模式。

在此处输入图像描述

 fun Community_view(Write_Community_data : ArrayList<String>
                   , Community_id : ArrayList<String>
                   , Community_title : ArrayList<String>){

        for(index in 0..Write_Community_data.size-1) {
                    db.collection("Write_Community")
                    .document(Write_Community_data.get(index))
                    .get()
                    .addOnSuccessListener { documentSnapshot ->

                        //val Community_title = ArrayList<String>()
                        //val Community_id = ArrayList<String>()
                        Community_title.add(documentSnapshot.get("title").toString())
                        Community_id.add(documentSnapshot.get("id").toString())
                        println("data_1 : " + Community_id.size)
                    }

            println("data_2 : " + Community_id.size)

        }
    println("data_3 : " + Community_id.size)
}

我以为 data_1 会先到 size-1,然后是 data_2,然后是 data_3,然后会记录日志。但是,是什么导致此代码记录以下内容:

在此处输入图像描述

您能否解释为什么要记录这些日志?或者有没有办法更有效地获取上述路线数据?谢谢您的帮助。

标签: firebasekotlingoogle-cloud-firestore

解决方案


推荐阅读