Firestore:多个条件where子句

例如,我对我的书籍清单有动态过滤器,可以在其中设置特定的颜色,作者和类别。该过滤器可以一次设置多种颜色,也可以设置多种类别。

   Book > Red, Blue > Adventure, Detective.

如何有条件地添加“ where”?

  firebase

.firestore()

.collection("book")

.where("category", "==", )

.where("color", "==", )

.where("author", "==", )

.orderBy("date")

.get()

.then(querySnapshot => {...

回答:

如您在API文档中所见,collection()方法返回一个CollectionReference。CollectionReference扩展了Query。Query.where()和Query.orderBy()也返回Query对象。因此,您可以像这样重写代码:

var query = firebase.firestore().collection("book")

query = query.where(...)

query = query.where(...)

query = query.where(...)

query = query.orderBy(...)

query.get().then(...)

现在,您可以输入条件来确定要在每个阶段应用哪些过滤器。只需query为每个新添加的过滤器重新分配。

if (some_condition) {

query = query.where(...)

}

以上是 Firestore:多个条件where子句 的全部内容, 来源链接: utcz.com/qa/401246.html

回到顶部