【问题标题】:How to check if a document exist in firestore database如何检查firestore数据库中是否存在文档
【发布时间】:2019-01-09 17:34:09
【问题描述】:

我正在尝试在我的 Angular 应用程序中开发一项服务,以验证我的 Firestore 数据库中是否已存在文档。 我该怎么做?

我一直在检查官方文档,但我没有找到解决方案:S

这是我的代码。

 user: {
   id: 'user1'
 }

  private usersCollection: AngularFirestoreCollection;

  constructor(private _afs: AngularFirestore) {

    this.usersCollection = _afs.collection('users');

    this.userCollection.doc(user.id).snapshotChanges().subscribe(data => {
      if(data.payload.exist){
         //User exist
      }else{
         //User no exist
      }
    })

当我尝试这个时...即使文档存在也总是返回 false...

我是否正确检查了 User.id 是否作为文档存在于我的用户集合中?

ScreenShot of my database structure

在img中可以看到,有一个文件叫User1,为什么data.payload.exist是假的?

【问题讨论】:

  • 感谢您提供给我的链接,但我仍然遇到这个问题...我的代码有什么问题?
  • 如果不显示您尝试读取的数据,就无法知道代码是否正确。请编辑问题以准确解释您要阅读的内容以及为什么您的代码应该显示文档确实以您期望的方式存在。
  • @DougStevenson 我想读的是......如果我的 /Users 集合中有任何文件称为 user.id 对不起,如果我没有解释清楚。英语不是我的母语:/
  • 对,但是您还没有向我们证明您要查找的实际文档确实存在。通常,人们会提供与试图阅读它的代码一致的文档截图或描述。

标签: google-cloud-firestore angularfire2


【解决方案1】:

您通过阅读文档来验证文档是否存在,然后检查结果是否存在。没有任何 API(在任何客户端平台上)可以为文档是否存在提供简单的布尔结果。

【讨论】:

  • 谢谢你的回答,但我知道理论,正如你所见,我添加了我的代码,但有些东西不起作用......
猜你喜欢
  • 2020-04-24
  • 2019-02-19
  • 2021-07-22
  • 2021-11-25
  • 1970-01-01
  • 2021-11-09
  • 2019-04-19
  • 2021-12-29
  • 1970-01-01
相关资源
最近更新 更多