Каждый раз, когда запускается мое приложение, я хочу получить данные пользователя из магазина.Так что в моем app.component.ts
у меня есть:
constructor(private platform: Platform, ..., private auth: AuthService, private firebaseServie: FirebaseService, private sessionData: SessiondataProvider) {
//Here i call a function that I have in a service:
if(this.sessionData.currentUser == undefined || this.sessionData.currentUser == null || this.sessionData.currentUser == ""){
this.firebaseServie.setUserData(user.email);
}
//And then I start the ProfilePage View:
this.rootPage = ProfilePage;
Служба functipn setUserData
вызывает асинхронный запрос к firestore:
setUserData(email) {
this.userCollection = this.afs.collection('users', ref => ref.where('email', '==', email));
this.userCollection.valueChanges().subscribe((item => {
this.users = item;
this.sessionData.currentUser = this.users[0].username;
}));
}
Так что сервисная функция устанавливает глобальную переменную currentUser
.В app.component.ts
я хочу быть уверенным, что переменная currentUser
установлена, ДО запуска представления ProfilePage
.Как мне это сделать?