PrimeNg - невозможно отфильтровать p-таблицу с параметром - PullRequest
0 голосов
/ 17 марта 2019

Я использую Angular 7 и библиотеку PrimeNg.

Я делаю р-таблицу:

<p-table #tasktable [columns]="displayedColumns" [value]="Tasks" [globalFilterFields]="['name']" [paginator]="true" paginatorPosition="both"
     rows="20" [autoLayout]="true" selectionMode="single" [(selection)]="selectedTask"
     [reorderableColumns]="true" >

Затем у меня есть текстовый ввод для глобального фильтра:

<input type="text" pInputText size="50" placeholder="Search by Task name" [(ngModel)]="filterFromUrl" (input)="tasktable.filterGlobal($event.target.value, 'contains')" style="width:auto">

Пока все хорошо.иногда я получаю параметр внутри своего URL, чтобы получить его, я использовал его в свой component.ts:

 this.activatedRoute.queryParams.subscribe(params => {
 this.filterFromUrl = params['task'];
});

И теперь у меня есть параметр из URL в моем filterFromUrl параметре.Моя проблема:

Я не могу получить таблицу, фильтрующую данные по параметру.

Я использовал [(ngModel)] bind в, это не работает, я вижу параметр наэлемент управления поиском: enter image description here

Но он не вызывает событие и данные не фильтруются.

1 Ответ

0 голосов
/ 11 апреля 2019

Все, что вам нужно сделать, это добавить фильтры в таблицу (убедитесь, что она соответствует формату, ожидаемому таблицей), вот так:

@ViewChild("tasktable ") public table: Table;
this.table.filters = {global { value: 'SUBMIT_ORDER', matchMode: 'search' }};
...