На самом деле есть две проблемы:
mat-paginator
проблема ссылки на элемент в @ViewChild
- Получение фактического индекса для
MatDataSource
(потому что у вас есть две структуры данных для список данных dataSource
и FormArray
)
решение для первой проблемы состоит в том, чтобы импортировать paginator и mat-datasource, как это
import { MatPaginator } from "@angular/material/paginator";
import {MatTableDataSource} from '@angular/material/table';
, для второй проблемы вы должны получить актуальную проиндексируйте следующим образом:
getActualIndex(index : number) {
return index + this.paginator.pageSize * this.paginator.pageIndex;
}
и используйте [formGroupName]="getActualIndex(index)"
РАБОЧИЙ ПРИМЕР
Также вы можете увеличить размер страницы в раскрывающемся списке, как вы добавить элемент в formArray.