Firestore where子句不符合条件。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Firestore where子句不符合条件。相关的知识,希望对你有一定的参考价值。

在我的函数中我有两个where子句。我想要的是检查文件是否退出,找到两个ID。但是当我运行它时,它会返回所有收集记录。任何人都可以告诉我哪里搞砸了?

setApplyStatus() {
   var query = firebase.firestore().collection('applications')
   query.where("jobSeekerId", '==', this.jobSeekerId).get()
   query.where("jobId", '==', this.job.id)
   query.get().then(querySnapshot => {
    querySnapshot.forEach(doc => {
     console.log(doc.data())
     console.log('already exists')
     this.applyStatus = true
    })
   })
 }
答案

您没有正确链接查询子句。此外,您在链中间调用get()。这几乎肯定不是你想要的。每个查询对象都建立在最后一个,你应该只对链中的最终查询得到():

setApplyStatus() {
  var query = firebase.firestore().collection('applications')
    .where("jobSeekerId", '==', this.jobSeekerId)
    .where("jobId", '==', this.job.id)
    .get().then(querySnapshot => {
      querySnapshot.forEach(doc => {
      console.log(doc.data())
      console.log('already exists')
      this.applyStatus = true
    })
  })
}

以上是关于Firestore where子句不符合条件。的主要内容,如果未能解决你的问题,请参考以下文章

Oracle Where(条件)子句用法

Oracle Where(条件)子句用法

7)where子句

Flutter:如何将列表传递到 Firestore where 条件

带WHERE子句的UPDATE语句

如何从 Firestore 7.24.0 实例中查询具有多个 where 子句的数据?