Firebase-如何检查where子句上的子集合是否为null或空? 这个是.db .收藏名称 .orderByname .where用户名,!=,无效的

Firebase-如何检查where子句上的子集合是否为null或空? 这个是.db .收藏名称 .orderByname .where用户名,!=,无效的,firebase,google-cloud-firestore,Firebase,Google Cloud Firestore,我知道Firebase不支持!=操作人员那么,如何检查作为子集合的用户名是否不为null或空 我知道Firebase不支持!=接线员 是的,没错 那么,如何检查作为子集合的用户名是否不为null或空 无法使用where函数检查用户名是否为子集合。您可以改为检查“用户名”子集合中的文档数: this.db.collection('titles').doc('titleId').get().then( doc => { if (doc.exists) { this.db

我知道Firebase不支持!=操作人员那么,如何检查作为子集合的用户名是否不为null或空

我知道Firebase不支持!=接线员

是的,没错

那么,如何检查作为子集合的用户名是否不为null或空

无法使用where函数检查用户名是否为子集合。您可以改为检查“用户名”子集合中的文档数:

this.db.collection('titles').doc('titleId').get().then(
  doc => {
    if (doc.exists) {
      this.db.collection('titles').doc('titleId').collection('usernames').limit(1).get().
        then(sub => {
          if (sub.docs.length > 0) {
            console.log('usernames subcollection exists!');
          }
        });
      }
  });
因此,解决方案是检查docs.length是否大于0

此外,子集合不能为null,也不能为空。如果集合不包含任何文档,则它根本不存在

我知道Firebase不支持!=接线员

是的,没错

那么,如何检查作为子集合的用户名是否不为null或空

无法使用where函数检查用户名是否为子集合。您可以改为检查“用户名”子集合中的文档数:

this.db.collection('titles').doc('titleId').get().then(
  doc => {
    if (doc.exists) {
      this.db.collection('titles').doc('titleId').collection('usernames').limit(1).get().
        then(sub => {
          if (sub.docs.length > 0) {
            console.log('usernames subcollection exists!');
          }
        });
      }
  });
因此,解决方案是检查docs.length是否大于0


此外,子集合不能为null,也不能为空。如果集合不包含任何文档,则该集合根本不存在。

检查是否存在时,请始终在查询中添加limit1,以防止检索到的文档超过所需数量。嗨,Alireza!你试过我上面的方法吗?如果你认为我的回答对你有帮助,请考虑接受。✔️. 我真的很感激。谢谢当检查是否存在时,请始终在查询中添加limit1,以防止检索到超过需要的文档。嗨,Alireza!你试过我上面的方法吗?如果你认为我的回答对你有帮助,请考虑接受。✔️. 我真的很感激。谢谢