Существует компонент Columns, который позволяет выбрать, какой столбец отображать в таблице, а какой нет.
<mat-form-field>
<mat-label>Columns</mat-label>
<mat-select [(ngModel)]="activeCols" multiple>
<mat-option *ngFor="let c of allCols" [value]="c">{{ c }}</mat-option>
</mat-select>
</mat-form-field>
Как предотвратить сброс ранее выбранных столбцов для таблицы при обновлении страницы?
Проект на stackblitz