倾斜达到公司的FireStore集合ID

问题描述 投票:0回答:2

我试图达到闭上眼睛,收集数据,并收集文档内和文档内再次集合。

但是我不能够做到这一点。

getTeams() {
  this.db
    .doc('epicseven')
    .collection('teams')
    .snapshotChanges()
    .subscribe(data => {
      console.log(data);
    });
}

这是数据库。

我想最后一个数组访问JSON,这样我就可以在HTML迭代。

谢谢你的帮助。

angular firebase google-cloud-firestore angularfire
2个回答
1
投票

我认为你错了集合在开始文档。 “epicseven”是一个集合。集合后始终是一个doc和一个文档里面有任何的集合或值本身的参考。除了你没有再往深足,以获得所需的数据,我的猜测是,你的查询只能得到球队集合的名称,因为公司的FireStore查询默认情况下浅。我建议以下查询:

getTeams() {
  this.db
    .collection('epicseven')
    .doc('teams')
    .collection([TEAM_NAME])
    .doc([ID])
    .valueChanges()
    .subscribe(data => {
      console.log(data);
    });
}

1
投票

用这个。

getTeams() {
  this.db
  .collection('epicseven')
  .doc('teams')
  .collection([TEAM_NAME])
  .doc([ID])
  .snapshotChanges()
  .pipe(map(list => list.map(item => {
     let data = item.payload.doc.data();
     let id = item.payload.doc.id;
     return { id, ...data }
   }))).subscribe(res => {
    console.log(res);
  });
}
© www.soinside.com 2019 - 2024. All rights reserved.