[英]Using orderByChild Firebase to get most recent posts
我想根據“order_date”值對我的查詢進行排序。 不幸的是,它以相反的順序返回它們(最舊的訂單在前)。 我也在嘗試通過分頁來實現這一點。 這是我當前的查詢。
var orders = fbdatabase.ref('orders').orderByChild('order_date');
orders.on('value', function(snapshot) {
console.log(snapshot.val())
});
無法使用 Firebase 以相反的順序進行查詢。 您需要使用limitToLast
:
var orders = fbdatabase.ref('orders')
.orderByChild('order_date')
.limitToLast(20);
orders.on('value', function(snapshot) {
console.log(snapshot.val().reverse());
});
或者,您可以存儲一個附加字段,如使用負值(假設時間戳)的order_date_desc
。
除了邁克爾的回答之外,您也沒有在回調中保留訂單。 在調用.val()
snapshot.forEach()
遍歷快照很重要:
var orders = fbdatabase.ref('orders').orderByChild('inverted_order_date');
orders.on('value', function(snapshot) {
snapshot.forEach(function(order) {
console.log(order.val())
});
});
看
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.