我声明了一个数组,后来给它分配了值。但是,当我尝试在同一viewcontroller中访问它时,值不存在。有没有一种方法可以使数组值在闭包之外访问
func loadReviews(){
Firestore.firestore().collection("BusinessReview").whereField("BusinessID", isEqualTo: businessID).limit(to: 3).getDocuments { (querySnapShot, err) in
if let err = err {
print("error\(err)")
} else {
for document in querySnapShot!.documents {
self.reviewsArr.append(document.data()["Review"] as! String)
}
}
}
dump(reviewsArr)
}
尽管在我执行转储后,在附加代码之后填充了数组,但后来对其空白进行了填充。我该如何解决?
答案 0 :(得分:0)
对Firebase的调用是异步的,因此您需要在补全中重新加载表
for document in querySnapShot!.documents {
self.reviewsArr.append(document.data()["Review"] as! String)
}
self.tableView.reloadData()