簡體   English   中英

如何在 Angular Firestore 中使用分頁創建邏輯 AND

[英]How to create a logical AND with pagination in Angular Firestore

我的 Firestore 數據庫中有一系列產品。 我希望用戶能夠根據顏色、類型和品牌等字段過濾這些產品。 每個產品都包含每個字段的值。

目前,我嘗試使用 where 查詢來返回用戶選擇的值的集合(有效),但是我想實現無限 scoll / 分頁,這樣我就可以限制一次完成的讀取次數.

我的代碼嘗試:

  return this.db
  .collection("products", (ref) =>
    ref.where('productName', '==', 'sofa').orderBy('productName').startAfter(lastSeen).limit(batchSize)
  )
  .snapshotChanges();

此代碼當然會返回錯誤,因為您不能將 where 與 orderBy / startAfter 查詢結合使用。

我的問題是,我如何調整此代碼以使用多個相等位置(我想要完全匹配,因此不使用'array-contains'),這也將允許我使用 orderBy 以便我可以添加無限滾動/限制數量結果。

angularfire2 目前似乎不支持此功能。

但是,我能夠使用默認的 Firestore Web 客戶端庫在測試應用程序中成功運行以下示例:

db.collection('cities')
.where('country','==', "USA")
.where('capital','==', true)
.orderBy("population")
.startAfter(100000)
.limit(2)
.get()

暫無
暫無

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

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