簡體   English   中英

如何一句話獲取X個獨立節點Firebase Realtime DB js

[英]How to get X independents Nodes in one sentence Firebase Realtime DB js

我想知道是否可以在與 JS 相同的請求中獲取一些節點(我有完整的路徑)

例子。

  • 指數
    • 鍵1
    • 鍵2
    • 關鍵3
    • 關鍵4
    • 關鍵5

其實我這樣做:

get(child(dbRef, `index/`+key1)).then((snap) => {
    get(child(dbRef, `index/`+key3)).then((snap) => {

    });
});

我怎樣才能用一句話得到key1和key3(可能有承諾?)謝謝

Firebase 實時數據庫只能獲取單個路徑,或該路徑下的直接子節點的切片(通過查詢)。 它沒有 API 來獲取超出此路徑的多個特定子節點。

所以你確實需要為每個孩子單獨打電話。 但請記住,Firebase 通過單個(Web 套接字)連接對這些請求進行管道傳輸,因此這並不像您最初預期的那么慢。 有關這方面的更多信息,請參閱使用查詢而不是重復觀察單個事件來加快獲取我的社交網絡應用程序的帖子

如果您要簡化代碼以等待兩個get調用完成,您可以使用Promise.all

Promise.all([
  get(child(dbRef, `index/`+key1)),
  get(child(dbRef, `index/`+key3))
]).then((snapshots) => {
  snapshots.forEach((snapshot, i) => {
    console.log(i, snapshot.key, snapshot.val());
  });
});

暫無
暫無

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

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