如何使用Ionic4 / Angular在嵌套的Firestore数据库中检索所有用户的数据

时间:2019-09-18 15:00:58

标签: angular firebase ionic-framework

我正在尝试使用angular在嵌套的Firestore数据库中检索所有用户的数据。数据库看起来像这样的用户(id)-> posts(id)- {说明:这是一张图片, 图片:imageURL}。

我正在该离子应用程序中使用firebase函数,并且可以使用index.ts文件中的此代码成功获取单个用户ID的数据。

const docs = await 

admin.firestore()。collection('people')。doc('R7iR7csLaDZuhUvZJWiFCcaLt903')。collection('tasks')。limit(5).get()

    return docs.docs.map(doc => {
    return {
        postID: doc.id,
        ...doc.data()
      }
   }) 
})

但是,这只能获取数据库结构中单个文件路径的数据,我想检索所有文档ID的数据,而不仅仅是一个ID。

home.ts文件如下所示

constructor(private aff: AngularFireFunctions) {}
 ngOnInit() {

const getFeed = this.aff.httpsCallable('getFeed')
this.posts = getFeed({}).subscribe(data=> {
  console.log(data)
  // this.posts = data
    })
}

1 个答案:

答案 0 :(得分:0)

如果您确实想为所有用户获取所有帖子,则您很可能希望规范化数据库,以免对嵌套集合进行调用。要下载整个收藏集,将类似于以下内容:

const docs = await admin.firestore().collection('people').get()

只需ping collection而不是document