Mat Paginator не работает в этой конкретной таблице

#angular #angular-material #mat-tab #mat-pagination

#angular #angular-material #mat-tab #mat-разбивка на страницы

Вопрос:

введите описание изображения здесь

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

введите описание изображения здесь

Код файла typescript —

.ts

    length;
      pageSize = 25;
      pageSizeOptions = [25, 50, 75, 100];
    
      @ViewChild('TABLE') table: ElementRef;
    
      @ViewChild(MatPaginator) paginator: MatPaginator;
    
  ngOnInit() {
      this.adminservice.getClearedStudents();
        this.studentSub = this.adminservice.getClearedStudentsListener().subscribe(result => {
          if (result.length > 0) {
            // tslint:disable-next-line: prefer-for-of
            for (let i = 0; i < result.length; i  ) {
              result[i].registrationno = '[ '   result[i].registrationno   ' ]' ;
            }
            this.dataSource = new MatTableDataSource(result);
            this.dataSource.paginator = this.paginator;
            this.length = result.length;
          }
        });
}
  

И код HTML-файла —

 <mat-paginator [length]="length" [pageSize]="pageSize" [pageSizeOptions]="pageSizeOptions" showFirstLastButtons></mat-paginator>
  

просто чтобы вы знали другие страницы с такими таблицами, mat paginator отлично работает, только это меня беспокоит, любая помощь приветствуется, заранее благодарю…

Комментарии:

1. Удалите [length] из вашего пагинатора и повторите попытку

2. пробовал все тот же ответ

Ответ №1:

можете ли вы проверить, инициализировали ли вы свой пагинатор в ngAfterViewInit

  ngAfterViewInit() {
    this.dataSource.paginator = this.paginator;
  }
  

Комментарии:

1. нет, безуспешно, я перепробовал все способы, также прочитал документы по разбивке на страницы angular material mat…

2. можете ли вы создать stackbliz?

3. Хорошо, я дам вам знать, как только я это сделаю