【发布时间】:2017-11-10 17:21:55
【问题描述】:
当我在视图控制器中调用这个观察函数时,.childadded 立即返回一个已经存储的对象,而不是像.childadded 所怀疑的那样刚刚添加了 bin。
func observe(callback: RiderVC){
let ref = DBProvider.Instance.dbRef.child("rideRequests")
ref.observe(DataEventType.childAdded) { (snapshot: DataSnapshot) in
if let data = snapshot.value as? NSDictionary {
let drive = cabRide(ritID: ritID, bestemming: bestemming,
vanafLocatie: vanaf, taxiID: taxiID, status: status)
print(drive)
callback.alertForARide(title: "Wilt u deze rit krijgen?", message: "Van: \(vanaf), Naar: \(bestemming)", ritID: ritID)
}
}
}
当我使用.childchanged 尝试此功能时,我只会在它按预期进行更改时收到警报,但在执行.chiladded 时,它只是将所有请求从数据库中取出,并且这些请求已经在那里。
当我添加一个新请求时,它也会发出警报。所以它有效,但我怎样才能摆脱未添加和已经存在的请求?
有人知道这个漏洞吗?
【问题讨论】:
标签: ios swift firebase firebase-realtime-database observers