动态显示不同的对象属性

时间:2018-07-18 17:29:50

标签: html angular typescript

我正在尝试动态获取不同对象类型的属性值。

我有多个选项卡,在其中显示每个选项卡中包含相同类型对象的列表。 因为对象的类型不同,所以我有一个包含数组的对象,这些数组包含每种对象类型的属性的名称。

示例:

objectTypesAttributes = {
Type_A: ['1',
  '2',
  '3',
  '4'],
Type_B: ['a.b',
  'c.d',
  'e.f',
  'g']};   

在我的HTML代码中,我有两个ngFor循环。外层显示列表中一种类型的所有对象。用来显示对象所有属性的工具。

<tr *ngFor="let t of tmp">
  <!-- do something... -->

   <!-- trying to access the value of the attribute of the object from the outer ngFor -->
   <td *ngFor="let attribute of objectTypesAttributes[objectType]" [innerText]="t.attribute "></td>

  </td>
</tr>

在内部循环中,如您所见,我想使用属性名称字符串来访问来自外部循环对象的值。 不知何故,这不适用于内部循环。它显示“未定义”或什么都不显示。

到目前为止,我尝试过类似的事情

[innerText]="t.attribute "

OR

<td *ngFor="let attribute of objectTypesAttributes[objectType]">{{t[attribute]}}</td>

和许多其他组合,没有可行的解决方案。

0 个答案:

没有答案