У меня была проблема здесь, и я кое-что сделал, но я хотел бы знать, если это хороший способ сделать это ...
У меня есть интерфейс:
export interface ContexteEnvironnement {
langue: string;
urlPing: string;
urlFinSession: string;
urlTimeout: string;
urlRetour: string;
urlBaseEpv: string;
}
У меня есть услуга:
contexteEnvironnement: ContexteEnvironnement;
getDataInitialisation(): Observable<ContexteEnvironnement> {
return this.http.get<ContexteEnvironnement>(configUrl, headerGET);
}
И у меня есть компонент приложения, в который я хочу получить данные:
ngOnInit() {
this.initialiserProprietes();
}
initialiserProprietes(): void {
this._serviceConfigInitiale.getDataInitialisation().subscribe(data => {
this._serviceConfigInitiale.dataInitialisation = data;
this._langueService.setLangueCourante(data.contexteEnvironnement.langue);
});
}
У меня была ошибка, говорящая:
ОШИБКА TypeError: Невозможно прочитать свойство 'urlBaseEpv' с неопределенным значением
Поэтому я решил инициализировать мою переменную в моем сервисе:
contexteEnvironnement: ContexteEnvironnement = {
langue: '',
urlPing: '',
urlFinSession: '',
urlTimeout: '',
urlRetour: '',
urlBaseEpv: ''
};
И все работает. Есть ли лучший способ сделать это?
Большое спасибо за советы!