- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用一个 child 添加的观察者来检查用户在使用我的应用程序时是否收到新通知...
func newLikeNotificationObserver() {
notifHandle = Database.database().reference().child("notifications").child(FirebaseDatabase.system.CURRENT_USER_ID).observe(DataEventType.childAdded, with: { (snapshot) in
if !snapshot.exists() {
print("ERROR")
return
}
let id = snapshot.key
print(id)
if let dict = snapshot.value as? Dictionary<String, Any> {
print("ADDED TO LIST")
let notif = Notifications(notifID: id, data: dict)
self.notifications.insert(notif, at: 0)
self.collectionView.reloadData()
}
})
}
我遇到的奇怪问题是,尽管当用户喜欢他/她自己的帖子时没有数据写入我的数据库,但触发了观察者并将通知插入到包含实际用户通知的数组中。当我打印出 notif-ID 以查看是否可以在我的数据库中找到它时,它无处可寻。任何人都可以看到我可能出错了吗?
此外,我正在删除 deinit 方法中的观察者并将其添加到 viewdidload() 中。提前致谢
最佳答案
放置事件观察者的正确位置是在 viewDidAppear 中,在 viewWillDisappear 中移除它们。
我认为很可能是之前的观察者没有被删除并且返回了错误的数据。重新启动计算机并查看它是在应用程序的初始运行时发生,还是仅在后续启动时发生
关于swift - Firebase ChildAdded 观察者正在检索不存在的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50109738/
当我在 API 调用之前启动事件指示器并在 API 调用之后停止时,我遇到了问题,但是如果我使用 .childAdded 填充 TableView,则无法正确执行此操作。由于 .childAdded
当/media 节点上的数据更新时,我正在尝试从 media 读取数据,但未调用 .observe(.childAdded。 例如,我在 /media/-LKN1j_FLQuOvnhEFfao/cap
我在向 Firebase 实时数据库添加新节点时遇到了一些问题。添加 child 时我得到了一些数据,但问题是我检索了键和 1 个值,但总共有 2 个值。 我有以下结构: -- groups
我正在使用一个 child 添加的观察者来检查用户在使用我的应用程序时是否收到新通知... func newLikeNotificationObserver() { notifHandle
我的 firebase 数据结构如下所示 user |__{user_id} |__userMatch |__{userMatchId}
我试图让我的程序将一个 child 的每个实例添加到一个数组中,但是每当我删除一个 child 然后添加另一个它重复添加的 child 两次,如果我再次这样做,它将重复 3 次,依此类推,具体取决于多
我正在尝试从 firebase 数据库检索 receiverId(下面的 JSON)。我知道如何使用 .Value 完成此操作,但使用 .ChildAdded 时遇到困难。 let postKey =
我正在尝试检索添加到我的 child 中的最新 child ,例如: 3D373545-2C7C-470F-9A79-C98C3BF90E0A -Ll-gQ3TB9W9pH8Z3Gn6
我之前发布了一个关于如何访问子快照中的数据的问题,在那里我得到了一个非常有效的答案。然而,这个解决方案只允许我按值检索数据——而不是我的 child 。你看,我有一个像这样的 JSON 树结构: Pl
我有一个 UICollectionViewController,它充当从我的 Firebase 数据库中检索和显示数据的提要。它是窗口的 Root View Controller ,因此它始终存在。我
我正在使用新的 firebase api 来观察实时数据库中名为“posts”的子路径 这是一个 JSON 条目: "posts" : { "-KLT6oYF-F_5sf-dC_2R" : { "
关闭。这个问题需要debugging details .它目前不接受答案。 编辑问题以包含 desired behavior, a specific problem or error, and th
根据 Firebase 文档: ChildAdded is triggered once for each existing child and then again every time a new
当我从 View Controller 中调用此观察函数时,.childadded 立即返回一个已存储的对象,而不是像 .childadded 那样刚刚添加了 bin . func observe(c
我知道当使用.value时,我可以使用.exists()检查是否有任何内容 在这种情况下,我在 SearchController 中运行查询,并且需要返回多个结果。当有结果时,一切都正常,但如果没有,
我在 iOS 中使用 childAdded 观察器列出数据。我知道这是 Firebase 设计,它会在第一次列出数据和添加数据时调用。 我不想在添加数据时调用 childAdded。我有想法 FEve
我有一个 UITableView,它将使用此函数正确加载: channelRef?.observeSingleEvent(of: .value, with: { (snapshot) in
我有一个要使用 Swift 从 Firebase 检索的数据列表。我尝试使用 .Value 获取数据,Firebase 返回一个字典,其中包含每个项目的 ID 以及每个 ID 的关联信息。 我调用的端
我有以下代码来观察图片的新评论并显示所有图片的新评论总数: let ref4 = DatabaseReference.media.reference() let query4
我有一个简单的 iOS 应用程序,可以将 1,000 个联系人与我的 Firebase 同步。 persistenceEnabled 在我的 AppDelegate 中设置为 true。 在我的 UI
我是一名优秀的程序员,十分优秀!