簡體   English   中英

將值添加到列表中的 firebase 實時數據庫

[英]Add values to firebase Realtime database in list

在我的 firebase 實時數據庫中,我有整數列表,這些值的鍵也是 integer 當我將新值添加到列表時它不會將新值添加到此列表的最后一個(firebase 將此列表從最小到最大的)所以我怎么能禁止這種方法,所以新值總是添加到列表的末尾而沒有 Firebase 安排它們。

這是我的清單的圖片: 這是我的清單的圖片

如果我添加 0 作為示例,它將是列表中的第一個值,我想要成為列表中的最后一個值,因為它是最新值: 在此處輸入圖像描述

注意:例如,我希望值是唯一的(數字 9 不應重復),這就是為什么我不能每次都使用 push 生成新密鑰的原因。

Firebase 鍵按定義未排序,但控制台按字母/字典順序顯示它們。 由於當前 JSON 中沒有“時間”指示,因此您自己的應用程序代碼也無法做任何不同的事情。

使用 Firebase 的push()操作,該操作會生成唯一的、始終遞增的鍵。 雖然它們可能比您當前的密鑰長一點,但根據定義,它們是按時間順序排列的。

因此,不要像這樣添加數據:

ref.child("9").setValue(9);

用這個:

ref.push().setValue(9);

更新

由於您表明您希望數字是唯一的,因此您可以將它們用作鍵(因為在 Firebase 中無法確保唯一),然后在每個節點的值中存儲一個時間戳。

ref.child("9").setValue(ServerValue.TIMESTAMP)

控制台仍將按字典順序顯示鍵,但是當從客戶端訪問數據時,您現在可以使用orderByValue()以按插入順序獲取項目。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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