我目前正在使用firebase开发角度为5的网络应用。无论如何,我为此使用了angular / firestore2。
我遇到的问题是我无法访问我的顶级收藏夹。我的结构就像
集合(顶级集合['事件“])->文档(与userId相关)->集合->文档
如果我尝试访问
中的顶级 return this.db.collection('events').valueChanges();
它返回空数组,尽管该集合中有文档。无论如何,如果我进行新的自定义收藏,例如:
馆藏(顶级馆藏['tests'])->文档
我尝试在
中访问该集合 return this.db.collection('tests').valueChanges();
它返回内部包含文档的数组。。我真的很困惑,希望能得到任何帮助。
我正在使用https://github.com/angular/angularfire2进行Firestore /存储连接。
答案 0 :(得分:0)
由于我不使用angular / firestore2,因此我不确定100%会发生什么情况,但是在documentation中说:“ AngularFirestoreCollection服务是本机Firestore SDK的CollectionReference
的包装, Query
种类型。”
Firestore中的查询是浅查询,因此,当您在子集合下的文档中进行修改时,不会触发在集合的父文档中声明的侦听器。
在“ {”}}方法的“标准” JavaScript SDK documentation中所解释的内容类似:“您可以使用onSnapshot()
来收听 a 文档。方法。”它不包括文档的子集合中的更改。