【发布时间】:2017-09-28 23:49:44
【问题描述】:
请告知我如何用 Angular 4.3 的新 HttpClient 替换我拥有的现有代码。我的问题是我想进行深度解析并将服务类之外的类型化对象返回给 Component。问题在于 httpClient 我无法将 result.data 作为 UserModel 返回
旧代码
组件
this.loginService.authenticate(this.loginModel).then(
res => { this.userModel = res;},
error => { this.handleError(error);}
);
服务类
public authenticate(model: LoginModel): Promise<UserModel> {
return this.http
.post(this.controller, JSON.stringify(model))
.toPromise()
.then(response => response.json().result.data as UserModel)
.catch(this.handleError);
}
修订的服务类代码
public authenticate(model: LoginModel): Observable<UserModel> {
return this.httpClient
.post<UserModel>(this.controller, model)
.catch(this.handleError);
}
如何将 response.result.data 映射到 Observable 并返回。我不想从我的类中返回完整的响应对象,而只返回 json 的一部分作为类型化对象。
【问题讨论】:
标签: angular