我不熟悉Angular 2中的动画,所以我可能会遗漏一些明显的动画,但是如何为* ngFor循环生成的元素设置动画?似乎动画与组件绑定,必须在@Component装饰器中定义?
是唯一的解决方案来创建一个内部组件,并在* ngFor中创建,然后动画那个?
以下是* ngFor循环中生成的元素的淡入动画示例.
my.component.ts
@Component({ selector: ...,templateUrl: 'my-component.html',styleUrls: ...,animations: [ trigger('fadeIn',[ transition(':enter',[ style({ opacity: '0' }),animate('.5s ease-out',style({ opacity: '1' })),]),],})
我-component.html
<div *ngFor="let item of myArray" @fadeIn>I'm an Item</div>
注意:如果你想使用具有特定状态的动画,你应该像这样绑定状态:
[@myAnimation]="'myState'"