Я работаю над общей мат-таблицей, где мы можем передавать данные в этот компонент таблицы, который будет показывать данные пользователю и должен обрабатывать нумерацию на стороне сервера.
Когда служба вызывается из того же компонента таблицы, она работает нормально,
Но при отправке события с использованием генератора выходных событий из таблицы в родительский компонент при изменении paginator это событие должно вызывать метод, который должен вызвать службу, которая будет извлекать записи следующей страницы и передавать ее компоненту таблицы, где пользователь сможет см. следующий набор записей.
Компонент стола
ngAfterViewInit(){
merge(this.paginator.page)
.pipe(
startWith({}),
switchMap(() => {
const obj = {
pageNumber: this.paginator.pageIndex,
pageSize: this.paginator.pageSize,
};
this.pageEvent.emit(obj); --> emitting event using event emiiter
return [];
}),
map((data) => {
console.log(data);
this.tableData = data;
return data;
}),
catchError(() => {
return observableOf([]);
}),
)
.subscribe((data: any) => {
});
}
приложение, составляющее HTML
<app-table [displayedColumns]="data" [tableData]="tableData"
(pageEvent)="paginator($event)"></app-table>
app comonent ts
paginator(event)
{
console.log(event)
this.pageCount=event.pageNumber+1;
this.getData(this.pageCount)
}
Заранее спасибо
stackblitz: https://stackblitz.com/edit/angular-yr45pl
Угловой пример: https://stackblitz.com/angular/mgjkylrpgjp