У меня проблема с бесконечным l oop при сохранении моих данных в базе данных с this.db.collection('users').doc(this.useruid).update({Info: this.currentInfo})
private currentInfo:string[];
private useruid: string;
...
constructor(private AngularAuth: AngularFireAuth,
private db:AngularFirestore) { }
...
sendInfo(text:string){
this.useruid = this.AngularAuth.auth.currentUser.uid;
this.db.collection('users').doc(this.useruid).snapshotChanges().subscribe(a=>{
const data = a.payload.data() as {name:string, Info:string[]};
data.Info.forEach(element => {
this.currentInfo.push(element);
});
this.currentInfo.push(text);
this.db.collection('users').doc(this.useruid).update({
Info: this.currentInfo
})...
})
}
В качестве примера представьте, что в настоящее время у меня есть currentInfo = ["a","b","c"]
и text = "d"
, после того, как вы запустите метод sendInfo( )
, я получу все oop с: ["a","b","c","d","a","b","c","d","d","a","b","c","d","a","b","c","d","d","d"...]
и т. д.