我写了一个Angular 4 http get请求来从我的API获取数据。我将结果转换为接口:IPerson []。但是,如果http请求中的某些属性不是同一类型或不同名,那么对他来说没问题就没有错误。
为什么不引发错误?这意味着我们无法对http请求进行类型检查?
以下是IPerson.ts接口的代码:
export interface IPerson {
AAA: number;
BBB: string;
CCC: number;
DDD: string;
FFF: number;
EEE: number;
}
对于Angular服务:
getFonction(): Observable<IPerson[]> {
return this._http
.get<IPerson[]>('../../../assets/example.json')
.timeout(10000)
.catch(this.handleError);
}
如果在json.exe中我有:
[{
-> ABC: boolean; <-
BBB: string;
CCC: number;
DDD: string;
FFF: number;
EEE: number;
},
{
-> ABC: boolean; <-
BBB: string;
CCC: number;
DDD: string;
FFF: number;
EEE: number;
}]
我将来自http调用请求的数据保存在一个名为&#34; persons:Person []&#34;的变量中。我控制台记录它我还有(没有错误):
[{
-> ABC: boolean; <-
BBB: string;
CCC: number;
DDD: string;
FFF: number;
EEE: number;
},
{
-> ABC: boolean; <-
BBB: string;
CCC: number;
DDD: string;
FFF: number;
EEE: number;
}]