亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

使用js映射兩個Firestore集合中的數據

使用js映射兩個Firestore集合中的數據

犯罪嫌疑人X 2023-08-18 17:11:04
我有兩個集合,即:CURRENCY-PAIR和Alerts。該CURRENCY-PAIR集合包含以下內容;貨幣對名稱貨幣賣價貨幣買入價該Alerts集合包含以下內容:警報ID警報狀態我如何將集合和集合映射 Currency-Pair Name到CURRENCY-PAIR 顯示Alert_Status兩者Alerts的列表。
查看完整描述

1 回答

?
不負相思意

TA貢獻1777條經驗 獲得超10個贊

假設你想從 firestore 獲取數據集合,你應該首先獲取該集合的引用:


const currencyRef = firestore().collection('CURRENCY-PAIR');

const alertRef = firestore().collection('Alert_Status');

然后,您可以使用這些引用從 firestore 獲取數據:


currencyRef.get()

  .then((doc) => {

    console.log(doc.data());

  });

如您所見,數據采用承諾的形式,您必須解決該承諾。doc.data() 是集合中所有數據的數組,采用 JS 對象的形式。


由于數據作為承諾而來,因此您可以創建一個異步獲取函數來解析承諾,并將數據放入返回的新數組中。也許你可以這樣做:


const fetchAllCurrencies = async () => {

  const obj = []; // empty array to put collections in

  const currencyRef = firestore().collection('CURRENCY-PAIR'); // ref

  const snapshot = await currencyRef.get() // resolve promise from firestore

  snapshot.forEach((doc) => { // loop over data

    obj.push({ id: doc.id, ...doc.data() }); // push each collection to array

  });

  return obj; // return array with collection objects 

}

您可以為警報集合創建類似的函數。


我不完全確定您的意思:“我如何將 CURRENCY-PAIR 集合中的貨幣對名稱和 Alerts 集合中的 Alert_Status 映射到顯示兩者的列表。”


通過創建像上面這樣的函數,您可以獲得集合 js 對象的數組。您可以將兩個數組組合起來:


const newArray = array1.concat(array2);

這會將兩個數組融合為一個。這可能不是您想要做的。如果我是你,我會將兩個數組分開。


查看完整回答
反對 回復 2023-08-18
  • 1 回答
  • 0 關注
  • 131 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號