使用multiTemplateDataRows指令未定义角度表索引

Tab*_*ces 6 indexing row angular mat-table

我无法显示我的表索引。这是一个示例表:

<mat-table [dataSource]="dataSource" multiTemplateDataRows>

<!--Column definitions-->        
    <ng-container matColumnDef="{{columnProp.name}}" *ngFor="let columnProp of columnProps; let i = index;">
        <mat-header-cell *matHeaderCellDef
                         mat-sort-header>
            {{columnProp.name}} {{i}}
        </mat-header-cell>

        <mat-cell *matCellDef="let element; let j = index;">
            <div>{{element[columnProp.name}} {{j}}</div>
        </mat-cell>
    </ng-container>

    <!--Row definitions-->
    <mat-header-row *matHeaderRowDef="displayedColumns"></mat-header-row>

    <!-- Row content-->
    <mat-row *matRowDef="let row; columns: displayedColumns; let k = index;"
             matRipple
             (click)="this.expandRow(row, k)">
    </mat-row>

    <!--Expanded row content-->
    <mat-row *matRowDef="let row; columns: ['expandedContent'];"
             [@detailExpand]="row == expandedElement ? 'expanded' : 'collapsed'">
    </mat-row>
</mat-table>
Run Code Online (Sandbox Code Playgroud)

列索引i并按j预期显示,但是当我单击行时,索引k显示为未定义。我在这里做错了什么?

Tab*_*ces 12

multiTemplateDataRows有一个不同的变量来保存名为的行的索引dataIndex。使用访问行的索引let k = dataIndex

相关的github问题

  • 你刚刚拯救了我的一天:D (2认同)