簡體   English   中英

使用 orderByChild Firebase 獲取最新的帖子

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM