我有一个meal
和mealplan
类。每个进餐计划都有一个由五个外键组成的数组,涉及到进餐对象。
export class Meal {
id: number;
name: string;
}
export class Mealplan {
id: number;
mealsPerWeek: Meals[] = new Array(5);
}
所有数据都这样存储在Angular的内存数据服务中:
export class InMemoryDataService implements InMemoryDbService {
createDb() {
const meals = [
{
id: 101,
name: 'Meal 1',
price: 18.00,
},
{
id: 102,
name: 'Meal 2',
price: 20.00,
},
];
const mensaplan = [
{id: 1, mealsPerWeek: [101, 102, 103, 104, 105]},
{id: 2, mealsPerWeek: [105, 104, 103, 102, 101]}
];
return {meal, mealplan};
Mensaplan.service.ts:
export class MealPlanService {
private mealplanUrl = 'api/meaplan';
constructor(private http: HttpClient) {
}
getMealplan(): Observable<Mealplan[]> {
return this.http.get<Mealplan[]>(this.mealplanUrl)
}
}
mealplan.component.ts
getMealplan(): void {
this.mealplanService.getMealplan()
.subscribe(mealplan => this.mealplan = mealplan);
}
}
如果现在使用{{mealplan.mealsPerWeek}}
在模板中对其进行渲染,则只会得到数组101,102,103,104,105
。
处理ID数组以显示类meal
的属性的最佳方法是什么?>
结果应该类似于
[MealPerWeek:膳食1(价格),膳食2(价格)等)>
我有上课和用餐计划。每个进餐计划都有一个由五个外键组成的数组,这些键指向进餐对象。出口餐餐{id:number;名称:字符串; }出口舱位Mealplan {id:...
例如,使用Map而不是Object:可以很容易地迭代和获取进餐的值