当内容以Angular2+;格式渲染时,如何修复mat复选框动画挂起/冻结;?

当内容以Angular2+;格式渲染时,如何修复mat复选框动画挂起/冻结;?,angular,angular-material,angular-animations,Angular,Angular Material,Angular Animations,我在angular 7应用程序中使用mat复选框(angular material UI 7.2)。 单击mat复选框时会生成一些网站内容。 在我的实际应用程序中,只有10个条目(复杂) <mat-checkbox (change)="onChange()">Check me! (bad animation)</mat-checkbox> <span *ngFor="let item of items"> {{item}} </span>

我在angular 7应用程序中使用mat复选框(angular material UI 7.2)。 单击mat复选框时会生成一些网站内容。 在我的实际应用程序中,只有10个条目(复杂)

<mat-checkbox (change)="onChange()">Check me! (bad animation)</mat-checkbox>
<span *ngFor="let item of items">
    {{item}}
</span>
检查我!(糟糕的动画)
{{item}}
我做了一个非常简单的例子,用许多简单的项目来说明我的问题

  public items = [];

  public onChange(){
    for (let i = 0; i < 10000; i++) {
      this.items.push(i);
    }
  }
公共项目=[];
公共onChange(){
for(设i=0;i<10000;i++){
本.项目.推送(一);
}
}
您可以在此处找到此示例:

当我单击mat checkbox时,复选框的动画挂起,看起来非常糟糕。
在这种情况下是否有可能修复此mat复选框挂起/冻结动画?

您可以在
@angular/core
中使用
ChangeDetectorRef

像这样使用
ChangeDetectorRef

在构造函数中添加检测器

constructor(....,
    private cdr:ChangeDetectorRef) { }
this.cdr.detectChanges()
您想要的位置


谢谢您的快速回答,实际上我看不出有什么区别,复选框动画仍然是挂起/冻结。。。也许你还有其他的想法?是的,解决这个问题,但是也许有其他的方法吗?因为用户需要额外等待500毫秒才能看到项目。如果没有其他可能性,我会在以后接受这个答案。如果可以的话,你可以使用等待gif。比如更新答案链接