如果我在重新建立连接时终止连接后又重新连接到Firebase,则FIRDataEventTypeChildAdded
类型观察器被重新初始化,那么我的问题是我从第一个开始又收到了所有子节点,而不是在特定的子密钥之后我想要一个子节点。我正在跟踪NSUserDefaults
中的最后一个子键。
我在位置上有FIRDataEventTypeChildAdded
,我想在-KbyxQDkWMeqEFQw8Bm5
键之后找到位置,我收到的又是所有位置。
最佳答案
物镜
FIRDatabaseQuery *query = [[ref queryOrderedByKey] queryStartingAtValue:lastChildKey];
[query observeEventType:FIRDataEventTypeChildAdded
withBlock:^(FIRDataSnapshot * _Nonnull snapshot) {
}
withCancelBlock:^(NSError * _Nonnull error) {
}];
迅速
let query = ref.queryOrderedByKey().queryStarting(atValue: lastChildKey)
query(.childAdded, with: { (snapshot) -> Void in })