我在这里遇到了一个问题,我做了一些事情,但我想知道这是否是这样做的好方法......
我有一个界面:
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);
});
}
我有一个错误说:
错误类型错误:无法读取未定义的属性"urlBaseEpv">
所以我决定在我的服务中初始化我的变量:
contexteEnvironnement: ContexteEnvironnement = {
langue: '',
urlPing: '',
urlFinSession: '',
urlTimeout: '',
urlRetour: '',
urlBaseEpv: ''
};
一切都正常。有没有更好的方法可以做到这一点?
非常感谢您的建议!
使用这样的类:
export class ContexteEnvironnement {
langue = '';
urlPing = '';
urlFinSession = '';
urlTimeout = '';
urlRetour = '';
urlBaseEpv = '';
}
然后将其写入您的服务或其他任何地方:
contexteEnvironnement = new ContexteEnvironnement();