Animación de estado de Angular10

En este artículo vamos a ver qué es State en Angular 10 y cómo usarlo.

Estado 

Sintaxis:

State(name, style, options)

NgModule: El módulo utilizado por State es:

  • animaciones

Acercarse: 

  • Cree una aplicación angular que deba usarse.
  • En app.module.ts, importe BrowserAnimationsModule.
  • En app.component.html, cree un div que contenga 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á.
  • Crea el estado que contiene el nombre y el estilo de la animación.
  • Sirva la aplicación angular usando ng serve para ver el resultado.

Parámetros:

  • Nombre: Establece una string de identificación.
  • estilos: un conjunto de estilos CSS asociados con el estado.
  • opciones:

Valor devuelto:

  • Metadatos de estado de animación:

Ejemplo:

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 { 
  // State is imported here
  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('geek',[
  
      // State is used here      
      state('clr', style({
        'background-color': '#91fff4',
        transform: 'translateX(0)'
      })),
  
      // State is used here
      state('clr1', style({
        'background-color': '#7356a8',
        transform: 'translateX(100px)'
      })),
      transition('clr => clr1',animate(1200)),
      transition('clr1 => clr',animate(1000))
    ])
  ]
})
export class AppComponent  {
  state = 'clr';
  anim(){
    this.state == 'clr' ? 
    this.state = 'clr1' : this.state = 'clr';
  }
}

app.component.html

<h1>GeeksforGeeks</h1>
<button (click)='anim()'>Animate</button>
<br>
<br>
<div 
  style="width: 150px; height: 100px; 
         border-radius: 5px;"
  [@geek]='state'>
</div>

Producción:

Referencia: https://angular.io/api/animations/state

Publicación traducida automáticamente

Artículo escrito por taran910 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *