Angular mat-table Сброс источника данных без сброса страницы - PullRequest
0 голосов
/ 09 июля 2020

Я использую mat-table в моем компоненте оболочки

<div class="mat-table-wrapper mat-elevation-z8" [class.inline]="inline">
    <table mat-table [dataSource]="dataSource" matSort class="app-mat-table">
      <!-- Populating columns and cells -->
      <ng-container *ngFor="let column of displayedColumns;let i = index" matColumnDef="{{ column }}">
       // custom column
       </ng-container>
    </table>
</div>
<div *ngIf="pagination" class="border-bottom border-left border-right">
    <mat-paginator [length]="paginationConfig.length" [pageSizeOptions]="paginationSize" showFirstLastButtons (page)="changePagination($event)"></mat-paginator>
</div>

И я использую свою настраиваемую сетку в app.component.ts, как показано ниже

<app-mat-table [paginationConfig]="{'length': totalFiles}" [pagination]="true" [APIPagination]="true"
                             (pageChange)="pageChange($event)" [paginationSize]="[regPageSize]"
                             [data]="dataSource" (cellClick)="cellClick($event)" sortable="false"
                             [columns]="columns">
              </app-mat-table>

При удалении записи из таблица mat со страницы (скажем, страница 2), я вызываю API, и он возвращает новые данные

this.dataSource =  new MatTableDataSource(oldData);

deleteRow(row: Row) {
    this.myservice.delete(row).subscribe( newData=> {
      this.dataSource =   new MatTableDataSource(newData);
   };
}

Но когда я устанавливаю новый источник данных, он перемещается на страницу 1, обновляя таблицу. Я хочу остаться на той же странице и увидеть, что запись удалена. Как я могу это сделать?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...