如何在 Firebase 中的 onvalue 侦听器上获取 orderbykey 格式的按键

问题描述 投票:0回答:1

我的 FirebaseDB 中有这种格式的键,我想在值侦听器上按值格式顺序获取这些键enter image description here

当我尝试这样做时,我的顺序是这样的:

  -KvhErzQOG2GE8XfzQhC 
  -KvhZRuIsl4ZbqNCrXt9
  -KvhZf3gwTsfOHsXP2M6
  -KvhLinnA_VC4KjFs_4Y: 
  -KvbPEAK39kHu98iW8Br: 
  -KvbPeRa4Bw8TEl8y5_J: 

我的代码看起来像这样

 _messagesRef.child('xx').child('xxx').child('xxx').orderByKey().onValue.listen((Event event){
var response = event.snapshot.value;});

有人可以帮忙吗?

android ios firebase firebase-realtime-database flutter
1个回答
0
投票

当您对 Firebase 数据库执行查询时,可能会出现多个结果。因此快照包含这些结果的列表。即使只有一个结果,快照也会包含一个结果的列表。

我建议听

onChildAdded
,它将按顺序触发,这就是 Flutter 示例 的作用:

_messagesSubscription =
    _messagesRef.limitToLast(10).onChildAdded.listen((Event event) {
  print('Child added: ${event.snapshot.value}');
});

或者,您可以听

onValue
,然后循环播放
event.snapshot.children
,但我没有方便的示例。

© www.soinside.com 2019 - 2024. All rights reserved.