Angular4 Typescript接口来自服务器的数字的动态类型转换问题

Angular4 Typescript接口来自服务器的数字的动态类型转换问题,angular,http,typescript,interface,Angular,Http,Typescript,Interface,我有一个模型 export class School { school_id: number; school_name: string; school_code: string; } 一旦我订阅了 我的学校数据变量初始化 schools: School[] = []; 我的数据服务 getSchool(){ return this.http.get(`${this.apiEndPoint}/api/getSchool`,this.jwt()) .map

我有一个模型

export class School {
    school_id: number;
    school_name: string;
    school_code: string;
}
一旦我订阅了

我的学校数据变量初始化

schools: School[] = [];
我的数据服务

getSchool(){
    return this.http.get(`${this.apiEndPoint}/api/getSchool`,this.jwt())
    .map((response:Response) => response.json() );
  }  

getSchoolData() {
    this.dataService.getSchool().subscribe(response => {
        this.schools = response.data;
        console.log(this.schools);
    });
  }
控制台日志对象提供

[0:Object
school_code:"ALL"
school_id:"1"
school_name:"ALL"
]

我希望school_id为数字及其设置字符串。我如何限制学校id,使其成为数字而不是接口。

是的,我通过

json_encode($response, JSON_NUMERIC_CHECK) 

在PHP响应中

正在从服务器发送数据。如果服务器将该值设置为字符串,那么它将以字符串的形式出现。实际上,在MySql中,该字段的类型为int。我在发送时正在进行json编码。但为什么它没有失败,并将其设置为字符串。是的,我通过PHP响应中的json_encode($response,json_NUMERIC_CHECK)在后端级别修复了它。但为什么Angular在通过字符串设置数值时不抛出错误呢?您的类型在运行时不存在。Typescript不执行任何运行时类型验证。