Я новичок в угловом программировании, и вопрос, конечно, прост, но это сводит меня с ума!
У меня есть база данных в Firestore, и я получаю данные из нее с помощью службы.
Данные структурированы с помощью интерфейсов (вложение других интерфейсов, включая массив ...)
Мой сервис:
@Injectable({
providedIn: 'root'
})
export class InfogeneriqueServicesService {
ItemsInfoGeneriqueCollection : AngularFirestoreDocument<Navigation>;
Infogenes: Observable<Navigation>;
constructor(public afs: AngularFirestore) {
this.ItemsInfoGeneriqueCollection = this.afs.doc('user/7878AZEVZAEV4');
this.Infogenes = this.ItemsInfoGeneriqueCollection.valueChanges();
} getInfoSGeneriques(){
return this.Infogenes;
}
Мой компонент ts:
import {Navigation} from '../StructureInterfaces/structuresInter';
import { InfogeneriqueServicesService } from '../services/infogenerique-services.service';
...
Nav : Navigation;
...
constructor(private adapter: DateAdapter<any>, private NaviService : InfogeneriqueServicesService) {}
ngOnInit(){
this.NaviService.getInfoSGeneriques().subscribe(IDperso =>{
this.Nav = IDperso;
});
this.selectedgrade = this.Grades[this.Nav.id.grade-1].viewValue;
ия получаю сообщение об ошибке:
ОШИБКА TypeError: "this.Nav не определено"
Это потому, что this.Nav еще не сгенерирован в данный момент?Должна ли инструкция this.selectegrade ... подождать, пока данные будут сгенерированы (и как?), Или есть проблемы с кодом?
Буду признателен за любую помощь ... Спасибо!