【发布时间】:2020-04-04 12:19:57
【问题描述】:
我在viewWillAppear() 函数中定义了一个侦听器,并试图在viewWillDisappear 函数中删除/分离它。但是,我无法访问viewWillDisappear() 函数中的侦听器,因此无法使用.remove() 将其分离。
我的代码:
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(true)
let db = Firestore.firestore()
let docRef = db.collection("collection").document("document")
let listener = docRef.addSnapshotListener { (querySnapshot, errur) in
....
}
}
override func viewWillDisappear(_ animated: Bool) {
listener.remove() //ERROR: Use of unresolved identifier 'listener'
}
我意识到错误是因为“侦听器”是在另一个范围内定义的,但我如何仍然可以访问它以在 viewWillDisappear() 中删除它?
【问题讨论】:
标签: swift firebase google-cloud-firestore