我在这里遇到一个问题,我做了点事,但是我想知道这是否是个好方法...
我有一个界面:
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: ''
};
一切正常。有更好的方法吗?
非常感谢您的建议!
答案 0 :(得分:1)
使用这样的类:
export class ContexteEnvironnement {
langue = '';
urlPing = '';
urlFinSession = '';
urlTimeout = '';
urlRetour = '';
urlBaseEpv = '';
}
,然后将其写入您的服务或其他任何地方:
contexteEnvironnement = new ContexteEnvironnement();