如何在angular中从RESTAPI响应中提取子对象
这是如何在angular中从RESTAPI响应中提取子对象,angular,ionic-framework,Angular,Ionic Framework,这是employee.component.ts: export class EmployeeDetailsComponent implements OnInit { empResponseList: EmpResponse[]; showEmps() { this.paymentService.getAllEmps().subscribe((data: EmpResponse[]) => { this.empResponse
employee.component.ts
:
export class EmployeeDetailsComponent implements OnInit
{
empResponseList: EmpResponse[];
showEmps() {
this.paymentService.getAllEmps().subscribe((data: EmpResponse[]) => {
this.empResponseList = data;
});
}
getAllEmps(): Observable<EmpResponse[]>
{
return this.http.get<EmpResponse[]>(this.baseUrl + `/api/emps`);
}
这是我们得到的响应数据=[employee:{},department[]]-->从中我们需要在组件it中添加department[]
这是EmployeeService.ts
:
export class EmployeeDetailsComponent implements OnInit
{
empResponseList: EmpResponse[];
showEmps() {
this.paymentService.getAllEmps().subscribe((data: EmpResponse[]) => {
this.empResponseList = data;
});
}
getAllEmps(): Observable<EmpResponse[]>
{
return this.http.get<EmpResponse[]>(this.baseUrl + `/api/emps`);
}
当我调用
showmps()
方法时,它将返回很好。你的问题还不清楚,但我假设如下
正如您所说,您的响应是一个EmpResponse数组,这意味着您有一个EmpResponse列表。在每个EMP响应中,您都有两个属性:部门和员工
如果需要部门列表,应执行以下操作:
this.deparments = this.empResponseList.map(emp => emp.department);
这将为您提供响应中所有部门的列表
可以使用map函数提取数组的任何对象属性
这里有一个类似这样的用法:
this.paymentService.getAllEmps().subscribe((data) => {
res: any;
res = data;
empResponseList = res;
});
我不能正确理解这个问题,但你不能使用数据访问部门吗?一个stackblitz的例子会很棒。看看这里的一个工作示例。