У нас есть выпадающий список, который получает данные 3K + для перечисления.
<select class="form-control" (change)="onSelect($event.target.value)" [(ngModel)]="employeeJobCode.JobCode.Id" name="JobCode" [ngClass]="{'alert-danger': JobCode.errors && (JobCode.dirty || JobCode.touched)}" #JobCode="ngModel" required>
<option [value]=""></option>
<option *ngFor="let dropDownValue of jobCodeListData" [value]="dropDownValue.Id">{{ dropDownValue.FullName }}</option>
</select>
Когда мы раскрываем раскрывающийся список, он отображает все 3K + элементов в списке.Для выполнения этого действия в IE11 требуется более 40 секунд.
При проверке данных профилировщика мы обнаружили, что NgForOf.prototype.ngDoCheck занимает почти 36 секунд, как видно на рис. -
ng для медлительности в IE11
В чем может быть причина того, что ngDoCheck такой медленный?Как мы можем оптимизировать эту производительность?