在角镖中显示对象列表的最佳方法

时间:2018-02-16 19:22:11

标签: angular dart angular-dart

我有以下数据结构:

Map<String, MyClass> items;

我从数据库加载的所有项目的地图。

List<String> selectedItems;

要在列表中显示的当前所选项目。

我现在想在html页面的ngFor循环中显示列表。如何为项目编写访问功能?它当然也应该检测对象的更新。

<div *ngFor="let item of selectedItems">
  {{ items[item].name }}
</div>

这些物品本身来自redux商店。因此,只要项目中的某些内容发生更改,对象就会重新创建为副本。但只有在选择发生变化时才会重新创建列表。

1 个答案:

答案 0 :(得分:1)

如果您只想访问可以使用的值

<div *ngFor="let item of items.values">
  {{ item.name }}
</div>

如果你想使用键和值,你可以

<div *ngFor="let key of items.keys">
  {{ key }} - {{ items[key].name }}
</div>

如果您想使用selectedItems使用

<div *ngFor="let item of selectedItems">
  {{ item }}
</div>

如果selectedItems包含键,则可以使用

<div *ngFor="let item of selectedItems">
  {{ items[item].name }}
</div>