Если мое понимание верно, то, пожалуйста, создайте следующие интерфейсы:
interface Profile{
uid:uid;
}
interface uid{
name:string;
age:number;
favourite:favourite;
}
interface favourite{
name:string;
uid:string;
}
, а затем используйте следующее в вашем сервисе:
getDataObj(objpath:string):Observable<Profile>{
return this.http.get<Profile>(objpath);
}
, а затем прочитайте любимое значение, например:
this.db.getDataObj("/Profile/" + this.uid).subscribe(res<Profile> =>{
console.log("Profile Result");
console.log(res.uid.favourite);
});
Если возможно, попытайтесь получить данные, относящиеся к избранным uid, с помощью профиля для этого uid. Таким образом, для получения всех данных вам потребуется только один вызов службы.Если этот вызов не требует больших объемов данных, я думаю, что это путь.В противном случае, если посмотреть на долгосрочную перспективу, если объем данных, которые вы получите в http-вызове службы профилей, должен увеличиться, то используйте отдельные http-вызовы для получения профиля и избранных данных для одного uid.
Это первый раз, когда я отвечаю на вопрос на этом форуме, поэтому, пожалуйста, не стесняйтесь сообщить мне свой ответ.