Angular firestore集合,检索要存储和使用的字段值
我正在尝试访问我的Firestore集合,并在每个文档的Angular firestore集合,检索要存储和使用的字段值,angular,google-cloud-firestore,ionic4,Angular,Google Cloud Firestore,Ionic4,我正在尝试访问我的Firestore集合,并在每个文档的valenceId字段中迭代所有文档以提取 我尝试了以下操作,但它显示了一个错误“无法检索未定义的valenceId”。我也尝试过使用可观察的,但无法提取数据。这对我来说是新的,所以任何建议都将不胜感激 我尝试过的代码: 单据:项目; 文档注释:数组; 恩戈尼尼特(){ 此.db.collection('entry').doc ('doc_Id').valueChanges().subscribe(数据=>{ 这个.doc=数据; this
valenceId
字段中迭代所有文档以提取
我尝试了以下操作,但它显示了一个错误“无法检索未定义的valenceId
”。我也尝试过使用可观察的,但无法提取数据。这对我来说是新的,所以任何建议都将不胜感激
我尝试过的代码:
单据:项目;
文档注释:数组;
恩戈尼尼特(){
此.db.collection('entry').doc
('doc_Id').valueChanges().subscribe(数据=>{
这个.doc=数据;
this.doc\u comments=数组(data.id);
console.log('doc_comments',this.doc_comments);
}
);
}
您要做的是在名为“doc\u Id”的单个文档上调用.valueChanges()
函数。。。如果您想遍历集合中的所有文档,只需使用
this.db.collection('diaryEntry').valueChanges().subscribe(
// your logic goes here
)
在
valueChanges
和subscribe
调用之后,您将得到一个包含您想要收集的数据的对象数组,因此我在内部使用forEach
对其进行迭代,它对我来说很有效
请注意,this.doc
在您的示例中不是数组,因此它将保存最后一个数组,我不认为您的目标是什么
doc:Item;
doc_comments: Array<number>;
ngOnInit() {
this.db.collection('entry').valueChanges().subscribe( data_array =>{
data_array.forEach(doc => {
this.doc = data;
this.doc_comments = Array(data.Ids);
})
console.log('doc_comments', this.doc_comments);
}
);
}
单据:项目;
文档注释:数组;
恩戈尼尼特(){
this.db.collection('entry').valueChanges().subscribe(数据数组=>{
数据_array.forEach(doc=>{
this.doc=数据;
this.doc\u comments=数组(data.id);
})
console.log('doc_comments',this.doc_comments);
}
);
}