遍历绑定到键的数组(动态)

Iterate through arrays binded to keys (dynamic)

示例键绑定数组

this.obj = { 
  key1 : [...],
  key2 : [...],
  .
  .
  keyn : [...] 
}

我有这 2 个 *ngFor 循环,其中使用外部 *ngFor 中的键(上述键)来定义内部 *ngFor.

keyVar是我从外循环得到的变量。 我尝试通过以下方式实施,但 none 有效。

*ngFor = "let item of obj.{{keyVar}}"
*ngFor = "let item of obj[keyVar]"

我如何实现它才能完美运行?

P.S:我正在为 ng-options 使用第二个 *ngFor。因此,分配一个单独的变量并从中调用是行不通的。

要从对象中获取键,您可以使用以下函数:

getKeys(): string[] {
  return Object.keys(this.obj);
}

然后在你的组件中像这样使用它:

<div *ngFor="let key of getKeys()">
  {{key}}:
  <div *ngFor="let item of obj[key]">{{item}}</div>
</div>

这是working demo