繁体   English   中英

Flutter 读取实时数据库

[英]Flutter Read Realtime Database

我正在尝试计算我的 Firebase 实时数据库中的消息数量,但我无法阅读第一个“消息”分支。

我使用此命令来显示我创建的对话的确切数量。

FirebaseDatabase.instance.reference().child('messages').once().then((DataSnapshot snapshot){
  print(snapshot.value.length);
});

他对我来说看起来不错 14 但我需要对每个分支(聊天室)中创建的每条消息进行计数。

理解树结构:

messages ----------id 聊天室 --------------id 消息

数据库

一种方法是使用onChildAdded流。 这个流被你收听位置的每个子节点调用,所以在 JSON 树中低一级。

它看起来像:

FirebaseDatabase.instance.reference().child('messages').onChildAdded.listen((Event event) {
    print(event.snapshot.value.length);
});

当您第一次调用onChildAdded.listen时,将打印每个现有子节点的长度。 然后,如果您(直接)在messages下添加一个新的子节点,它的长度也会被打印出来。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM