【问题标题】:React Native Firebase V9.1.1 Order By Date KeyReact Native Firebase V9.1.1 按日期键排序
【发布时间】:2021-12-03 11:25:31
【问题描述】:

我正在那里构建一个聊天应用程序
我正在使用 Firebase 实时数据库和 Firebase V9.1.1
如何通过日期键订购快照?
有我的数据库结构的外观
正如我们所见,默认情况下,DB 中的数据不是按日期排序的
有我试过的查询:

onValue(query(ref(db, chatBaseURL), orderByChild('chatDate')), snapshot => console.log(snapshot.val())

【问题讨论】:

    标签: javascript reactjs firebase firebase-realtime-database


    【解决方案1】:

    问题是您在整个结果快照上调用snapshot.val()。这会将所有结果作为 JSON 对象获取,并且 JSON 对象中的键根据定义具有未定义的排序顺序。

    要按您请求的顺序记录结果,请使用snapshot.forEach() 循环遍历生成的快照:

    onValue(query(ref(db, chatBaseURL), orderByChild('chatDate')), results => 
      results.forEach((snapshot) => {
        console.log(snapshot.val());
      });
    });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-05-08
      • 2017-08-16
      • 2017-05-24
      • 1970-01-01
      • 2020-06-09
      • 1970-01-01
      相关资源
      最近更新 更多