【发布时间】:2021-02-08 16:27:19
【问题描述】:
如何在新文档添加到 Firestore 或删除时重新加载表格视图这是我的问题:
我在viewDidLoad() 上调用此函数feachOrder(),因此在添加或删除文档后,它不会在firestore 中监听该更改,直到我关闭应用程序并再次重新打开它或再次运行它,我想要什么是一旦添加了新文档,tableView 会重新加载数据并立即获取值
func fetchOrder(){
let fireStore = Firestore.firestore()
let doc = fireStore.collection("طلب").document(Auth.auth().currentUser!.uid)
self.doc = doc.documentID
doc.getDocument { (snapshot, error) in
if error != nil {
debugPrint("error fitching\(String(describing: error))")
}else{
guard let snap = snapshot?.data() else {return}
let name = snap["name"] as? String ?? ""
let phone = snap["phone"] as? String ?? ""
let orderText = snap["order"] as? String ?? ""
let time = snap["time"] as? String ?? ""
let price = snap["amount"] as? String ?? ""
guard let orderLocation = snap["orderLocation"] as? GeoPoint else{return}
guard let userLocation = snap["userLocation"] as? GeoPoint else {return}
DispatchQueue.main.async {
UIView.animate(withDuration: 2 , delay: 2, options: .allowAnimatedContent, animations: {
self.emptyView.isHidden = true
}, completion: nil)
let myOrder = myOrderData(name: name, phone: phone, amount: price, time: time, orderDetails: orderText, orderLocation: orderLocation, myLocation: userLocation)
self.orders.append(myOrder)
self.ordersTV.reloadData()
}
}
}
}
【问题讨论】:
-
您需要在代码中添加监听器。
-
究竟在哪里以及这就是我问这个问题的原因我看到很多类似的问题,但我猜它们都与我的代码不匹配
标签: ios swift google-cloud-firestore