Я думаю, это потому, что я на самом деле не знаю, как делать то, что я хочу правильно. По сути, я сохраняю связь между пользователем и школой (также пользователем), и в новом документе я хочу получить некоторые URL-адреса изображений от пользователя школы. Мои запросы для этого оба возвращают неопределенное ...
По сути, я хочу сохранить URL-адреса изображений в другом документе, который буду использовать.
Результат выводится на консоль нормально ....
private addUserSchool(userId: string, school: any) {
const concatId = this.concatIds(userId, school.uid);
const userSchoolsRef: AngularFirestoreDocument<any> = this.afs.doc(`userSchools/${concatId}`);
const schoolRef: AngularFirestoreDocument<any> = this.afs.doc(`users/${school.uid}`);
let schoolImageURL;
let schoolImageLogoURL;
if(school.active) {
schoolRef.valueChanges().subscribe(result => {
console.log(result)
return schoolImageURL = result.schoolImageURL;
});
}
schoolRef.valueChanges().subscribe(result => {
console.log(result)
return schoolImageLogoURL = result.schoolImageLogoURL;
})
// create model from this.
const data = {
userId: userId,
schoolId: school.uid,
active: school.active ? school.active : false,
activeSchoolImageURL: schoolImageURL ? schoolImageURL : null,
activeSchoolLogoURL: schoolImageLogoURL ? schoolImageLogoURL : null
}
return userSchoolsRef.set(data, { merge: true })
}