En este artículo, vamos a ver qué es animar en Angular 10 y cómo usarlo.
animar
Sintaxis:
animate(timings | styles)
NgModule: el módulo utilizado por animate es:
- animaciones
Acercarse:
- Cree la aplicación angular que se utilizará
- En app.module.ts importar BrowserAnimationsModule
- En app.component.html crea un div que contendrá el elemento de animación.
- En app.component.ts, importe el activador, el estado, el estilo, la transición y la animación que se utilizará.
- Haz la animación usando animation() que contiene tiempos y estilos.
- Sirva la aplicación angular usando ng serve para ver el resultado
Parámetros:
- timing: Establece AnimateTimings para la animación principal
- estilos: Establece AnimationStyles para la animación principal
Valor devuelto:
- AnimaciónAnimarMetadatos:
Ejemplo 1:
app.module.ts
import { LOCALE_ID, NgModule } from '@angular/core'; import { BrowserModule } from '@angular/platform-browser'; import {BrowserAnimationsModule} from '@angular/platform-browser/animations'; import { AppRoutingModule } from './app-routing.module'; import { AppComponent } from './app.component'; @NgModule({ declarations: [ AppComponent ], imports: [ BrowserModule, AppRoutingModule, BrowserAnimationsModule ], providers: [ { provide: LOCALE_ID, useValue: 'en-GB' }, ], bootstrap: [AppComponent] }) export class AppModule { }
app.component.ts
import { trigger, state, style, transition, animate } from '@angular/animations'; import { Component } from '@angular/core'; @Component({ selector: 'app-root', templateUrl: './app.component.html', styleUrls: [ './app.component.css' ], animations: [ trigger('gfg',[ state('normal', style({ 'background-color': 'red', transform: 'translateX(0)' })), state('highlighted', style({ 'background-color': 'blue', transform: 'translateX(0)' })), transition('normal => highlighted',animate(1200)), transition('highlighted => normal',animate(1000)) ]) ] }) export class AppComponent { state = 'normal'; anim(){ this.state == 'normal' ? this.state = 'highlighted' : this.state = 'normal'; } }
app.component.html
<h1>GeeksforGeeks</h1> <button (click)='anim()'>Animate</button> <div style="width: 100px; height: 100px" [@gfg]='state'> </div>
Producción:
Referencia: https://angular.io/api/animations/animate