контроль пагинации не работает в соответствии с общим количеством элементов в угловых 2 после начальной нагрузки - PullRequest
0 голосов
/ 25 октября 2018

Для управления разбиением на страницы я передаю значения параметров 'total items', 'currentpage' и 'itemsperpage' со стороны сервера. Когда я сначала выполняю операцию поиска, нумерация страниц работает корректно в соответствии с общим количеством элементов, которые будут выделяться, но если явыполните еще одну операцию поиска, номера нумерации страниц не отображаются должным образом в соответствии с общим количеством элементов, они сохраняются в соответствии со старыми значениями, я получаю правильный итог с сервера, но он не обновляется в элементе управления нумерацией страниц.Примечание. Если я полностью обновляю страницу, значит, она работает, но без обновления не работает.

ngfor grid:

 <tr *ngFor="let item  of mf.data | paginate :{ itemsPerPage:_pageItems, currentPage:page, id : 1, totalItems:_totalItems } | orderBy: {property: column, direction: direction } ; let ndx = index" class="InnerFormCenterLabel">
<td>{{item.Column1}}</td>
<td>{{item.Column2}}</td>
</tr>

Управление разбиением на страницы:

<pagination-controls (pageChange)="page = GoReports($event)"
                                             id="1"
                                             maxSize="6"
                                             directionLinks="true"
                                             autohide="true"
                                             responsive="true">
                        </pagination-controls>

В файле .ts:

GoReports(event: any) {
if (event == undefined) {
    this.reportDeal.PAGE = 1;
}
else {
    this.reportDeal.PAGE = event;
}
this.busyObservable = this.dataservice.goReports(this.reportDeal)
    .subscribe(reportDeal => {
        this.data = reportDeal;
        if (this.data.length > 0) {
            this.ShowReportData = true;
            this.HideReportlbl = false;
            this._totalItems = reportDeal[0].TOTALITEMS;
            this._pageItems = reportDeal[0].PAGEITEMS;
        }
        else {
            this.HideReportlbl = true;
            this.ShowReportData = false;
        }
    }

    );

return event;

}

...