【发布时间】:2020-07-11 21:55:58
【问题描述】:
您好,我正在学习 Angular 8,作为一名学习者,我有很多疑问。我正在详细分享我的一个疑问。我希望你们中的一些人可以轻松地帮助和纠正我。
我有一个使用 Web API 并返回一些公司详细信息的服务,例如
0: {CompanyId: 1, Name: "xxxx", Address: "bn"}
1: {CompanyId: 2, Name: "yyyy", Address: "tv"}
service.ts
GetAll(): Observable<IEmployee>{
return this.httpClient.get<IEmployee>(this.apiUrl + "GetCompany_test").}
组件.ts
private emp : IEmployee;
getAllEmployees(){
this.service.GetAll().subscribe(
response => {this.emp =response;console.log(response)},
error => console.log(error)
);}
IEmployee.ts
export interface IEmployee{
fullName:string,
Email:string,
Mobile:string,
City:string,
HireDate:Date
}
即使我使用 Observable<IEmployee> 的 Observable,我也能获得公司详细信息。那么这里有什么需要铸造的呢?当我投射到 Employee 并且我很容易获得非 Employee 数据时,它应该让我在控制台中出现一些警告或错误,对吗?我对正在发生的事情完全感到困惑。
有人可以在这里帮助我理解投射的概念,并建议我正确使用投射。
问候。
【问题讨论】:
-
能否请您再试一次,将
this.httpClient.get<IEmployee>(this.apiUrl + "GetCompany_test")替换为this.httpClient.get<IEmployee>(this.apiUrl + "GetCompany_test", { "observe": "body" }),看看是否会抛出任何错误? -
控制台没有错误。响应还是一样。
标签: angular casting angular-httpclient rxjs-observables