我的Firebase架构如下所示,
我正在尝试获取数据general并按numberOfLikes属性对其进行排序。据我了解orderByChild,以下代码应该可以工作。
var ref = new Firebase('http://myapp.firebaseio.com/floorPosts/general');
ref.orderByChild('numberOfLikes').once('value', (snapshot) => {
return snapshot.val();
});
Run Code Online (Sandbox Code Playgroud)
但是,我不是按照我的数据按numberOfLikes排序,而是使用按字典顺序对键排序的数据。
JSON对象的属性未定义。由于val()返回表示该值的JSON对象,因此其中的属性顺序未定义。
为了使孩子们有正确的顺序,请使用DataSnapshot.forEach():
var ref = new Firebase('http://myapp.firebaseio.com/floorPosts/general');
ref.orderByChild('numberOfLikes').once('value', (snapshot) => {
snapshot.forEach(function(childSnapshot) {
console.log(childSnapshot.val());
});
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
845 次 |
| 最近记录: |