【发布时间】:2018-04-21 08:22:46
【问题描述】:
如果它包含多个按钮和一个文本字段,则从 Angular Material 打开一个对话框会很慢。 我做了一个stackblitz来说明问题。
如果对话框包含以下 html,则会快速动画:
<h1 mat-dialog-title>Hi {{data.name}}</h1>
<div mat-dialog-content>
<p>What's your favorite animal?</p>
<mat-form-field>
<input matInput [(ngModel)]="data.animal">
</mat-form-field>
</div>
<div mat-dialog-actions>
<button mat-button (click)="onNoClick()">No Thanks</button>
<button mat-button [mat-dialog-close]="data.animal" cdkFocusInitial>Ok</button>
</div>
就我而言,我有一个包含表单和一些选项卡的 html 结构。如果我删除表单标签,对话框会打开得更快一些,但不够快也不够流畅。如果我从 html 中删除选项卡,对话框将像 Angular Material 提供的示例一样流畅地打开。有什么办法可以让对话框打开得更快吗?通过添加NoopAnimationsModule,我可以打开没有滞后动画的对话框,这很好,但是我的应用程序中的其他一些动画也停止工作了。
我找到了this issue on gitHub,但该线程中提供的 hack 对我不起作用
【问题讨论】:
-
在我升级到 Angular 和 Angular Material 到 6.0.1 后,动画不再慢了。