【发布时间】:2018-08-18 00:30:08
【问题描述】:
我的应用程序中有一个基于 mat-table 的组件,它允许用户通过单击来选择一行。根据选定的表格行,代码会在相邻的扩展面板中显示有关该行的其他信息/详细信息。当页面加载时,没有选择任何表格行 - 因此详细信息面板为空。以编程方式选择表行(比如说第一行)的最佳方法是什么?
当前行选择基于在被单击的 mat-row 上调用单击处理程序,该处理程序将属性“selectedRowIndex”设置为 row.id 字段。这会导致该行的 ngClass 绑定到一个突出显示的 css 类:
<mat-header-row *matHeaderRowDef="displayedColumns"></mat-header-row>
<mat-row *matRowDef="let row; columns: displayedColumns;" [ngClass]="{'highlight': selectedRowIndex == row.id}" (click)="highlight(row)"></mat-row>
但是,如果我想要第一行的“默认”选择,我将如何实现呢?我认为,对于许多开发人员来说,这应该是一个非常标准的用例。
【问题讨论】: