【发布时间】:2018-08-11 14:17:46
【问题描述】:
我在 Firebase Firestore 上存储了一个配置文件表和一个作业表。我正在创建一个 Angular 5 网站。为了节省网络电话,我将用户个人资料名称添加到每个工作文档中。 (不确定firestore是否有表链接)。所以当用户更新他的名字时,我也必须更新他们的工作文件(不是很多)。我可以获得具有正确用户 ID 的作业集合。但我无法弄清楚如何在不使用 Observable(一次调用)的情况下遍历列表并更新一个字段。这是我尝试过的迫使我的浏览器进入连续循环的方法
jobsCollection : AngularFirestoreCollection<Job>;
jobDoc: AngularFirestoreDocument<Job>;
jobs: Observable<Job[]>;
job: Observable<Job>;
update(profile: Profile){
this.jobsCollection = this.db.collection('jobs', ref => {
return ref.where('user_id', '==',profile.user_id);
});
this.tracksCollection.valueChanges(item => {
console.log('update this record:', item);
item.forEach(job=> {
console.log('This is the job');
this.jobDoc = this.db.doc(`jobs/${job.id}`);
job.name= profile.name;
this.jobDoc.update(job);
});
});
}
任何帮助将不胜感激,谢谢 PK
【问题讨论】:
标签: angular google-cloud-firestore angularfire2