为了账号安全,请及时绑定邮箱和手机立即绑定

根据子值对 Firebase 数据进行排序

根据子值对 Firebase 数据进行排序

qq_花开花谢_0 2021-12-23 19:30:30
我正在尝试按每个帖子子项上的时间戳对我的 Firebase 查询进行排序。相反,我只是获取存储在数据库中的未排序数据。我正在使用 firebase npm 包。数据结构如下:posts   -Lsx-tFbXe83gANXP3TD       -timestamp: 1466171493193   -Lsx-sWzXe83gANWNM3R       -timestamp: 1466171493111这是我使用的 javascript 代码:https : //firebase.google.com/docs/database/web/lists-of-datafirebase.database()      .ref("posts")      .orderByChild("timestamp")      .on("value", function(snapshot) {        _this.setState({          posts: Object.values(snapshot.val()),          loading: false      });});提前致谢!
查看完整描述

1 回答

?
青春有我

TA贡献1784条经验 获得超8个赞

snapshot你回来包含三个条关于符合您查询子节点信息:

  1. 钥匙

  2. 价值

  3. 他们之间的相对位置

一旦你调用snapshot.val()所有关于排序的信息就会丢失,因为 JSON 对象只能包含键和值。

为了保持顺序,您需要将信息转换为数组:

var values = [];

snapshot.forEach(function(child) {

  values.push(child.val());

})


查看完整回答
反对 回复 2021-12-23
  • 1 回答
  • 0 关注
  • 97 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信