Firebase类型为.childAdded的观察每次都会检索我的所有信息请协助

问题描述

一些方法可以做到这一点:

  • ref.queryLimitedToLast(1)开始时使用。请参阅Firebase,仅接收新孩子。
  • 跟踪您在本地存储中获得的最新密钥,然后使用 queryOrderByKey().queryStartingAtValue(latestKey)
  • 将时间戳记添加到项目中,然后再添加时间戳记> =现在的项目。了解如何在Firebase数据库中丢弃初始数据queryOrderByChild("timestamp").queryStartingAt(now)

解决方法

根据Firebase文档:

为每个现有子项触发一次ChildAdded,然后每次将新子项添加到指定路径时再次触发

因此,我有一个应用程序,该应用程序的顶部带有一个小横幅,每次用户收到新消息时都会弹出。如您所料,这些消息存储在Firebase用户对象的子级中。因此,这就是问题所在,当我加载该应用程序时,它会弹出以显示用户收到的每条消息。是否可以仅在添加新孩子时才调用此观察事件?我不希望仅在添加一个新孩子时为每个现有孩子触发该事件。我讨厌必须将消息引用存储在核心数据中,并检查每个孩子是否已经在核心数据中存在它:/

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...