I am working on one project where I used PrimeNg
table with froze & unfroze column property and its working fine in normal column creating with *NgFor
but if I add new column without *NgFor
its repeating in both froze & unfroze table.
How to overcome this issue as I want that column only on froze column not on unfroze column.
My Code:
<ng-template pTemplate="header" let-columns>
<tr>
<th>All</th>
<th *ngFor="let col of columns">
{{col.header}}
</th>
</tr>
</ng-template>
<ng-template pTemplate="body" let-rowData let-columns="columns">
<tr>
<td>
<p-tableCheckbox
[value]="rowData"
[attr.disabled]="
rowData.setupType === 'No Action' &&
rowData.currentStatus === 'INACTIVE'
? 'disabled'
: null
"
></p-tableCheckbox>
</td>
<td *ngFor="let col of columns">
{{rowData[col.field]}}
</td>
</tr>
</ng-template>
Column repeat Issue:
How to overcome this issue ?
Guide me if its possible in PrimeNg
table.
You need to use template frozenheader
<ng-template pTemplate="frozenheader" let-columns>
<tr>
<th>All</th>
<th *ngFor="let col of columns">
{{col.header}}
</th>
</tr>
</ng-template>
and frozenbody
<ng-template pTemplate="frozenbody" let-rowData let-columns="columns">
<tr>
<td style="text-align: center">
<p-tableCheckbox [value]="rowData" [attr.disabled]="
rowData.setupType === 'No Action' &&
rowData.currentStatus === 'INACTIVE'
? 'disabled'
: null
"></p-tableCheckbox>
</td>
<td *ngFor="let col of columns">
{{ rowData[col.field] }}
</td>
</tr>
</ng-template>
Demo here