1

角材のマットテーブルコンポーネントでテーブルを実装しています。コード内のイベントが発生したときに特定の行にスキップしたい。

これまで、 (focus)行と仮想スクロールのイベントを使用しようとしました。

しかし、私は何かが欠けていると思います。これよりも単純なはずです。

4

1 に答える 1

1

私はこの質問を見つけました。これらのいくつかの変更を加えて、これが私の問題で機能するようにします。
要するに - scrollIntoView- 次回誰かがそれを必要とする場合は、私のコードを以下に添付してください。

//.tpl
<tr mat-row
          #matrow
          [attr.serialNumber] = row.serialNumber
          [ngClass]="{'selectedRow': selectedNode && selectedNode.serialNumber === row.serialNumber}"
          *matRowDef="let row; columns: displayedColumns;"
 ></tr>

// component.ts 
// selected point is your desierd element from data source
 scrollRowToView(selectedPoint) {
    const row = this.rows.find(r => 
    r.element.nativeElement.getAttribute('serialNumber') === selectedPoint.serialNumber);
    if (row != null) {
    row.element.nativeElement.scrollIntoView( {behavior: 'smooth', block: 'center', inline : 'center'});
 }

}

于 2019-11-18T12:03:50.547 に答える