NGX Datatable — сброс смещения с помощью функции

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

Вот что у меня есть далеко:

Таблица:

 <ngx-datatable
  class='material'
  [rows]='rows'
  [columns]="columns"
  [columnMode]="'standard'"
  [headerHeight]="75"
  [footerHeight]="50"
  [scrollbarH]="true"
  [rowHeight]="'auto'"
  [limit]="5"
  [selectionType]="'multiClick'"
  [offset]="tableOffset"
  >
</ngx-datatable>

Соответствующее ТС:

tableOffset = 0;

updateFilter(event, seachCriteria) {

  // Filtering Process...

  // Whenever the filter changes I want to go back to the first page
  this.tableOffset = 0;
}

Любые указатели на то, где я ошибаюсь?

EDIT Итак, я попытался установить смещение на 1 и обнаружил, что сброс с помощью this.tableOffset = 0; действительно работал, но всякий раз, когда я использовал стрелки для перехода на другую страницу, это предотвратило этот сброс.

Это ошибка или я что-то упускаю?


person av0000    schedule 13.04.2017    source источник


Ответы (2)


Вы также должны обрабатывать событие страницы.

просмотреть

<ngx-datatable
    ...
    [offset]="tableOffset"
    (page)="onChange($event)">
</ngx-datatable>

компонент

updateFilter(event, seachCriteria) {
    ...
    this.tableOffset = 0;
}

onChange(event: any): void {
    this.tableOffset = event.offset;
}
person shusson    schedule 28.06.2017

<ngx-datatable
    #table
    class="material"
    [columns]="columns"
    [columnMode]="'force'"
    [headerHeight]="50"
    [footerHeight]="50"
    [rowHeight]="'auto'"
    [limit]="10"
    [rows]="rows"
  >
  </ngx-datatable>

файл ts

import { DatatableComponent } from '@swimlane/ngx-datatable';; @ViewChild(DatatableComponent, { static: false }) table: DatatableComponent;

updateFilter() {
// update the rows
this.rows = [...this.rows];
// Whenever the filter changes, always go back to the first page
this.table.offset = 0; }
person ashokbalaga    schedule 04.06.2019
comment
Как правило, ответы гораздо полезнее, если они включают объяснение того, для чего предназначен код, и почему это решает проблему, не вводя других. - person Rallen; 04.06.2019