Я использую ngx-datatable, который прекрасно работает, но сталкивается с проблемой следующего поведения:
- У меня есть тумблер, который изменяет свойство столбца при переключении:
![enter image description here](https://i.stack.imgur.com/HrzIu.png)
- Чтобы изменить значение свойства, я использую приведенный ниже код в шаблоне и компоненте:
<ngx-datatable-column name="Activation Status" prop="activation_status">
<ng-template ngx-datatable-cell-template let-value="value" let-row="row" let-rowIndex="rowIndex">
<mat-slide-toggle *ngIf="value === 'ACTIVATED'" color="accent" checked="true" disabled="true">
{{value}}
</mat-slide-toggle>
<mat-slide-toggle *ngIf="value === 'PENDING'" color="accent" checked="false" (change)="onToggle(rowIndex)">
{{value}}
</mat-slide-toggle>
</ng-template>
</ngx-datatable-column>
onToggle(rowIndex) {
setTimeout(() => {
this.rows[rowIndex].activation_status = 'ACTIVATED';
this.rows = [...this.rows];
}, 100);
console.log(rowIndex);
}
Свойство обновляется в порядке, если столбец не отсортирован.
Если я сортирую столбец, то rowIndex сохраняется в соответствии с исходным значением, а свойство не обновляется.
Есть какое-нибудь решение для этого?
Спасибо