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

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

如何從 Firestore 獲取數組值?

如何從 Firestore 獲取數組值?

慕桂英4014372 2023-04-20 16:35:24
我將下圖所示的數據結構存儲在 Cloud Firestore 中。我已將公司記錄保存在 Firestore 數據庫中,我想檢查我的域是否存在于公司的域數組中,如果是,那么我想要所有公司數據作為響應,但我不知道如何使用 Firestore 實現這一點。我在這里標記了域。讓我解釋更多,例如,如果我的域名是“abcinfo.in”,那么我想檢查它是否已經存在于任何 partner_company 域中,并且在這里它與這個 partner_company 相關聯,所以它應該返回 partner_company 的所有數據. 就是這樣。我試過下面的代碼但是當只有一個值時它會有所幫助但在這里我需要從數組中檢查 var domaindata = db.collection('partner_company').where('company_domain', '==', _user.domain);  domaindata.get().then(function (querySnapshot) {    querySnapshot.forEach(function (doc) {      console.log(doc.id, ' => ', doc.data());    });  });所以請建議我更好的方法來獲得我想要的數據。謝謝。
查看完整描述

2 回答

?
holdtom

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

Firebase 帶有一個簡潔的數組過濾功能:array-containsarray-contains-any。它們可以用作查詢運算符。

使用 array-contains 過濾數組以獲得必須完美匹配的值。以下查詢將解析您的測試文檔:

db.collection('partner_company').where('company_domain',?'array-contains',?['abcinfo.in',?'newtest.com'];

array-contains-any 在另一側過濾至少一個匹配值。

db.collection('partner_company').where('company_domain',?'array-contains-any',?['definfo.in',?'newtest.com'];


查看完整回答
反對 回復 2023-04-20
?
繁星點點滴滴

TA貢獻1803條經驗 獲得超3個贊

您可以執行以下操作:

var?domaindata?=?db.collection('partner_company').where('company_domain',?'array-contains',?_user.domain);

這將檢查數組是否company_domain包含傳遞的域。


查看完整回答
反對 回復 2023-04-20
  • 2 回答
  • 0 關注
  • 146 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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