Dos tipos muy diferentes de Pipes Angular - Pipes y RxJS - Pipes
Tubo angular
Una tubería toma datos como entrada y los transforma en una salida deseada. En esta página, usará tuberías para transformar la propiedad de cumpleaños de un componente en una fecha amigable para los humanos.
import { Component } from '@angular/core';
@Component({
selector: 'app-hero-birthday',
template: `<p>The hero's birthday is {{ birthday | date }}</p>`
})
export class HeroBirthdayComponent {
birthday = new Date(1988, 3, 15); // April 15, 1988
}
RxJS - Tubería
Los operadores observables se componen mediante un método de tubería conocido como Operadores de tubería. Aquí hay un ejemplo.
import {Observable, range} from 'rxjs';
import {map, filter} from 'rxjs/operators';
const source$: Observable<number> = range(0, 10);
source$.pipe(
map(x => x * 2),
filter(x => x % 3 === 0)
).subscribe(x => console.log(x));
La salida para esto en la consola sería la siguiente:
0
6
12
18
Para cualquier variable que contenga un observable, podemos usar el método .pipe () para pasar una o varias funciones de operador que pueden trabajar y transformar cada elemento en la colección observable.
Entonces, este ejemplo toma cada número en el rango de 0 a 10 y lo multiplica por 2. Luego, la función de filtro filtra el resultado solo a los números impares.