是否有一种方法来迭代元素在数组在Swift,通过增加计数与UIButton动作?



我使用firestore来查询数据存储在字典中的文档。我希望能够遍历每个文档,按下IBAction UIButton,该函数也将增加for-in循环计数。

func queryMethod(){
let typeRef = Global.db.collection("userData")
let query = typeRef.whereField("type", isEqualTo: "Mentor")
query.getDocuments { querySnapshot, err in
if let err = err {
print("Error getting documents: (err)")
} else {
for document in querySnapshot!.documents {
print("(document.documentID) => (document.data())")
}
}
}
}

获取文档并将其存储到一个常量属性中。使用计数器索引变量作为下标来访问文档中的每个项,而不是使用for循环,因为您希望在单击按钮时控制访问每个文档。在你的IBAction on click中你可以像这样访问每个元素:

if let document = querySnapshot!.documents[index] {
print("(document.documentID) => (document.data())")   
}
index += 1

然而,你要通过下标访问项目,只是确保处理数组越界的情况下,如果你的文档是一个空集合。您可以在IBAction中添加一个检查,以便您的索引小于querySnapshot!.documents->执行操作

if index < querySnapshot?.documents.count {
// access it via subscript of index value
}

相关内容

  • 没有找到相关文章

最新更新