我正在尝试从实时数据库迁移到Firebase中的Cloud Firestore。我在重写代码时遇到了一些问题,这些代码会遍历数据库中的子代。
我的旧代码如下:
if (dataSnapshot.exists()) {
for (x in dataSnapshot.children) {
FetchInformation(x.key)
}
}
对于Firestore,它看起来像这样:
if (snapshot!!.exists()) {
for (x in snapshot){
FetchInformation(x.key)
}
} else {
Log.d(TAG, "Current data: null")
}
但是,firestore中不存在快照(snapshot.children)这样的东西,我正在接收编译错误
“ For-loop范围必须具有'iterator()'方法
答案 0 :(得分:0)
您可以尝试
for(i in 0..snapshot) {
// x..y is the range [x, y]
}
或
for(i in 0 until snapshot) {
// x until y is the range [x, y>
}