Angular2:以行/列方式显示组件

时间:2017-03-28 14:01:51

标签: angular angular2-template

我有一个具有以下结构的数组,其中第一个字段是组件名称,第二个是该组件的数据,第三个是列号,第四个是行号。

我打算根据它们的col和row位置显示这些项目。

col, row

我尝试使用 <table *ngFor="let Component of gadgetsComponents"> <div [ngSwitch]=Component[0]> <div *ngSwitchCase="'PieChart'"> <app-donut [donutchartData] = "Component[1]"> </app-donut> </div> <div *ngSwitchCase="'grid'"> <app-grid [gridData] = "gadgetsComponent[1]"> </app-grid> </div> 并循环遍历这些数组并使用switch case来调用所需的组件。但是所有这些组件都一个接一个地显示。但我想根据他们的if(gl_PrimitiveID==intersectingFace) color=vec4(1.0f,0.0f,0.0f,1.0f); 位置

显示它们
var filteredList = list.GroupBy(o => o.Name)
                       .Where(g => g.Count() == 1)
                       .SelectMany(g => g.Select(o => o))
                       .ToList();

1 个答案:

答案 0 :(得分:0)

既然你使用table为什么不利用它?

<强> Plunker

<table>
 <tr *ngFor="let row of rows; let rowId = index">
 <td *ngFor="let col of cols; let colId = index">
   <div *ngIf="activeElement(rowId,colId) === 'PieChart'">PichartComponent</div>
   <div *ngIf="activeElement(rowId,colId) === 'donut'">DonutComponent</div>
   <div *ngIf="activeElement(rowId,colId) === 'grid'">GridComponent</div>
 </td>
</tr>