如何在 Angular 中无限迭代动画

Abh*_*kra 1 javascript css typescript angular angular-animations

这是我下面的代码,我想无限地迭代动画并停止并在我编写的组件中开始我写在下面的代码

@Component({
  selector: 'page-login',
  templateUrl: 'login.html',
  animations: [
    // Each unique animation requires its own trigger. The first argument of the trigger function is the name
    trigger('run', [transition('void => *',[animate(1000, keyframes([
      style({transform: 'translateX(0)    rotateY(0)',        offset: 0}),
      style({transform: 'translateX(10%)  rotateY(70deg)',    offset: 0.33}),
      style({transform: 'translateX(20%) rotateY(30deg)',   offset: 0.66}),
      style({transform: 'translateX(0%)',                  offset: 1.0})
    ]))
    ])  
  ])  
]
}) 
Run Code Online (Sandbox Code Playgroud)

在 HTML 文件中,我写了下面的代码

<img  @run id="animicon" src="assets/.../logo_1.png" style="background:black"  
                                                                   class="image--background">
Run Code Online (Sandbox Code Playgroud)

Veg*_*ega 8

当通过路由器或 *ngIf 添加组件或以编程方式添加组件时,当常规/普通 CSS 不起作用时,可以使用角度动画。对于您在帖子中描述的情况,您不需要 Angular 动画,纯 css 动画就足够了:

CSS

@keyframes myAnimation {
  0%   {transform: translateX(0) rotateY(0)}
  33%  {transform: translateX(10%) rotateY(70deg)}
  66%  {transform: translateX(20%) rotateY(30deg)}
  100% {transform: translateX(0%)}
}

img {
  animation: myAnimation 5s infinite;
}
Run Code Online (Sandbox Code Playgroud)

演示