我调用remove(),但侦听器仍在工作。 我只想将result(true)称为onece。
var listener: ListenerRegistration!
func setListener(result:@escaping(Bool)-> Void){
listener = ref.addSnapshotListener { (querySnapshot, err) in
if ...
result(true)
self.removeListener
}
}
func removeListener() {
if listener != nil {
listener.remove()
}
}
答案 0 :(得分:0)
我正在将可变侦听器设置为同一变量。那就是原因。