首頁  >  文章  >  web前端  >  如何在Firestore中實作具有多個子句的條件過濾?

如何在Firestore中實作具有多個子句的條件過濾?

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-10-22 14:35:02103瀏覽

How to Implement Conditional Filtering in Firestore with Multiple Clauses?

Firestore 中使用多個子句的條件過濾

想像一下,您的圖書收藏有一個動態過濾系統,允許用戶按顏色、作者和類別進行過濾。要適應具有多個選擇的篩選器(例如「紅色、藍色」和「冒險、偵探」),您需要在 Firestore 查詢中實作條件「where」子句。

解決方案

要有條件地新增「where」子句,您必須使用 Firestore 中查詢物件的不可變性質。無需修改現有查詢,而是為您新增的每個篩選器建立一個新的查詢物件:

<code class="javascript">var query = firebase.firestore().collection("book");

// Check for conditions and add filters accordingly
if (colorFilter) {
    query = query.where("color", "==", colorFilter);
}
if (categoryFilter) {
    query = query.where("category", "==", categoryFilter);
}

// Apply sorting if needed
if (orderBy) {
    query = query.orderBy(orderBy.field, orderBy.direction);
}

// Finalize the query and fetch results
query.get().then(...);</code>

透過不斷地為每個新篩選器重新指派查詢變量,您可以建置一系列動態適應您的條件查詢。過濾標準。

以上是如何在Firestore中實作具有多個子句的條件過濾?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn