gpt4 book ai didi

Angular 2 - 加入

转载 作者:搜寻专家 更新时间:2023-10-30 21:40:40 26 4
gpt4 key购买 nike

我有两个对象 - 时间和客户。

this.customer = Customers[]
this.hour = Hours[]

在这两个对象中,我都有 customer_id 字段 - 现在我想创建一个新列表,其中包含小时列表中的详细信息以及客户列表中的 customer_name。

this.hourswithcustomers[] = ?

我如何将这两个对象/列表加入一个新列表以获得以下结果?

| hour.hour_id | hour.hour_amount | hour.customer_id | customer.customer_name |
| 1 | 500.00 | 99 | microsoft |
| 2 | 300.00 | 55 | apple |
| 3 | 200.00 | 99 | microsoft |

最佳答案

合并两者的最简单方法是结合 customerId -> Customer 的映射。然后您可以从那里循环遍历小时以填充 hourswithcustomers 对象。

映射数据:

var customerMap = {};
this.customer.forEach((customer) => {
customerMap[customer.customer_id] = customer;
})

this.hourswithcustomers = this.hour.map((hour) => {
return {
hour: hour,
customer: customerMap[hour.customer_id]
};
});

在您的 View 中,您可以像这样显示它:

<tr *ngFor="let hwc of hourswithcustomers">
<td>{{hwc.hour.hour_id}}</td>
<td>{{hwc.hour.hour_amount }}</td>
<td>{{hwc.hour.customer_id}}</td>
<td>{{hwc.customer.customer_name}}</td>
</tr>

关于Angular 2 - 加入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41472886/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com