【发布时间】:2017-05-17 22:10:22
【问题描述】:
当我更新传入*ngFor 的集合时,我正在触发动画:
//JS
state : string = 'a';
colors = {
a: ['red','blue','green','yellow'],
b: ['orange']
}
public onClick (){
this.state = this.state === 'a' ? 'b' : 'a';
}
//HTML
<div *ngFor="let color of colors[state]"
[@animationState]="state"
(click)="onClick()">
{{color}}
</div>
问题:在动画发生时,a 和 b 的颜色都会显示,这会使动画变得生涩。
我试过了:
- 在
void => *动画开始之前设置transform: scale(0)或display:none - 将
void => *动画延迟* => void动画的持续时间
我希望:在新内容淡入/滑入之前(或同时)平滑淡入和/或滑出现有内容。
这是一个演示问题的 plunkr:https://plnkr.co/edit/IDE6q6lJ84QI2Zirvn4P?p=preview
【问题讨论】:
标签: angular angular2-animation