【发布时间】:2013-12-25 13:14:23
【问题描述】:
我正在使用以下内容:
Firebase *fb =[[Firebase alloc] initWithUrl:url];
[fb setValue:d withCompletionBlock:^(NSError *error, Firebase *ref) {
if (error) {
// bad news
} else {
}
}];
如果您有连接,这似乎工作得很好,如果没有,似乎永远不会调用回调。如果是这种情况,我是否需要将整个内容包装在connectedRef 中?当我猜测完成块会因错误状态不在线而失败时,似乎需要做很多额外的工作。
还有其他人有这个问题吗?
【问题讨论】:
-
我相信当Firebase以离线模式启动时,你需要调用一个值为null的
setop。我对这里的细节并不坚定,但这应该会启动 init。此外,在最新版本中添加了完整的离线持久性:groups.google.com/forum/#!topic/firebase-talk/dOocEtjQz4w -
这是一种让您的观察者在您不在线时触发事件的技术。除非有来自服务器或本地 setValue 调用的数据,否则观察者不会触发,因此有时执行 setValue 来让观察者触发是有意义的。但你通常不需要这个。