【问题标题】:Firebase Sorting Data RetrievalFirebase 排序数据检索
【发布时间】:2017-01-30 14:06:15
【问题描述】:

这是我拥有的代码:我正在尝试获取存储在 Firebase 数据库中的按工资排序的数据。数据库的顺序是:“帖子 -> PostID(保存时推送)-> 工资。”我的数据检索工作不正常。

var PostsRef = firebase.database().ref().child("Posts");
PostsRef.on('child_added', function(data) {
  var title = data.val().title;
  var description = data.val().description;
  var completionDate = data.val().completionDate;
  var complexity = data.val().complexity;
  var wage = data.val().wage;
  var uid = data.val().userID;
});

【问题讨论】:

  • 你是如何存储帖子的?您是否将每个帖子存储在一个帖子数组中?

标签: javascript firebase firebase-realtime-database


【解决方案1】:

您将工资存储为字符串,这意味着它们将按字典顺序排序:

1

13

2

20

3

如果你想按数字顺序获得结果,你应该将工资存储为数字,所以不要加引号。

如果您从代码中存储它们,这可能需要您将其转换为 parseInt(wagesAsString)

将工资存储为数字后,您可以按顺序获取它们:

var PostsRef = firebase.database().ref().child("Posts");
var query = PostsRef.orderByChild("wage");
query.on('child_added', function(data) {

【讨论】:

  • 啊。因此,在我将工资保存为数字之后,我应该在代码中的哪个位置包含代码:“.orderByChild()”?它应该在 PostsRef 声明的末尾吗?
  • 我添加了一个示例。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-08-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多