火力基地。有没有办法忽略在 iOS 上调用 childAdded?

Posted

技术标签:

【中文标题】火力基地。有没有办法忽略在 iOS 上调用 childAdded?【英文标题】:Firebase. Is there way to ignore calling childAdded on iOS? 【发布时间】:2014-06-14 12:08:29 【问题描述】:

我在 ios 中使用 childAdded 观察者列出数据。我知道这是 Firebase 的设计,第一次调用它来列出数据和添加数据时。

我不想在添加数据时调用 childAdded。 我有想法在列出数据时不能调用 FEventTypeValue。(正确吗?)

我的问题:

有没有办法只在添加数据时忽略 childAdded 或在没有 childAdded 的情况下首次列出数据?

对不起我的英语。感谢您的进步!

【问题讨论】:

【参考方案1】:

iOS/OS X Quick Start 使用此示例。本质上,您只是获取路径的整个值,而不是查看子事件:

// Read data and react to changes
[f observeEventType:FEventTypeValue withBlock:^(FDataSnapshot *snapshot) 
  NSLog(@"%@ -> %@", snapshot.name, snapshot.value);
];

要只接收一次值,而不是每次都发生变化,您可以利用 observeSingleEventOfType 方法:

// Read data and react to changes
[f observeSingleEventOfType:FEventTypeValue withBlock:^(FDataSnapshot *snapshot) 
  NSLog(@"%@ -> %@", snapshot.name, snapshot.value);
];

【讨论】:

谢谢加藤。 “for (FDataSnapshot* childSnap in snapshot.children)”是我需要知道的!我没注意到。我应该更仔细地阅读参考资料。非常感谢!

以上是关于火力基地。有没有办法忽略在 iOS 上调用 childAdded?的主要内容,如果未能解决你的问题,请参考以下文章

如何从云函数中的请求中获取参数?火力基地

从火力基地检索信息

如何更新数组中的地图数据?颤振火力基地

火力基地 |在functions.pubsub.schedule onRun上获取RemoteConfig值时出错

将图像从颤振上传到火力基地(没有任何反应)

如何根据用户的帐户注册条件显示组件?火力基地 | Vue