Компоненты PrimeNG
Table
FlexScroll

FlexScroll

<div class="q-scrollbar" style="height: calc(100vh - 300px); overflow-y: auto;">
  <p-table [value]="customers" [scrollable]="true" scrollHeight="flex">
    <ng-template pTemplate="header">
      <tr>
        <th>Name</th>
        <th>Country</th>
        <th>Company</th>
        <th>Representative</th>
      </tr>
    </ng-template>
    <ng-template pTemplate="body" let-customer>
      <tr>
        <td>{ { customer.name } }</td>
        <td>{ { customer.country.name } }</td>
        <td>{ { customer.company } }</td>
        <td>{ { customer.representative.name } }</td>
      </tr>
    </ng-template>
  </p-table>
</div>