У меня огромный набор данных, отображаемый в таблице (5000 строк).
Я пытаюсь отфильтровать данные, используя фильтр столбцов, и при применении того же самого я держал счетчик, чтобы показать, что операция фильтра выполняется
Но поскольку в javascript действие настолько быстрое, логическая переменная, которую я использовал как флаг для проверки того, что данные отфильтрованы / не отфильтрованы, быстро изменяется
Однако для отображения свежих данных в DOM требуется около 2 секунд. Я хочу показать спиннер в это время привязки DOM.
HTML:
<div *ngIf="isFilterClicked" class="col-md-12" style="text-align: center;color: #165cb9;height: 440px;padding-top:100px">
<px-spinner size="100">
</px-spinner>
</div>
<div *ngFor="let product of products">
</div>
1010 * Javascript *
this.initialProducts=this.products; //initialize
filterTable(filterData) {
this.isFilterClicked = true;
const result = this.initialProducts.filter(function (o1) {
return o1.id === filterData.id; // return the ones with equal id
});
});
this.products= result ;
this.isFilterClicked = false;
}