【发布时间】:2021-06-11 22:47:53
【问题描述】:
我正在努力正确设计 Angular 服务。用例:
在 Angular 组件中,我将调用一个服务,该服务应该返回我想要转换的数据,如下所示:
private async getEntities() {
let req = { condition1: this.condition1, condtion2: this.condition2 }
let result = await this.EntityService.findByConditions(req);
}
对应的服务调用如下:
public findByConditions(requestBody) {
return this.http.post<any>(API_URL + "/fancyEndpoint", requestBody).toPromise().then(response =>
{console.log(response) }).catch(error => console.log(error));
}
My Backend 以正确的方式返回了这些对象的 List,但是 Frontend 日志中的结果如下:
因此,由于我对 Angular 和前端开发还很陌生,所以我遇到了以下问题:
- 怎么可能只返回一个元素作为实际对象,而所有其他元素都由数据库 ID 表示?
- 在渲染之前获取需要转换的数据的最佳实践是什么(例如:从端点调用数据,从中构建一个 ChartJs 图表(我们必须等待 Observable/Promise 完成),然后渲染它到 HTML)?
抱歉,这个问题太长了,我是前端开发的新手,正在寻找最佳实践解决方案。
提前致谢!
【问题讨论】:
标签: angular typescript angular-services