pluck<T, R>(...properties: string[]): OperatorFunction<T, R>
properties | Las propiedades anidadas que obtener de cada elemento de la fuente (un objeto). |
OperatorFunction<T, R>
: Un nuevo Observable de propiedades de los valores de la fuente.
Es como map
, pero se utiliza para extraer una de las propiedades anidadas de los objetos emitidos.
Dada una lista de cadenas que describan la ruta de una propiedad de un objeto, obtiene el valor de la propiedad anidada especificada de todos los valores del Observable fuente. Si la propiedad no existe, se devolverá undefined
para ese valor en concreto.
Obtener una propiedad de un objeto
import { pluck } from "rxjs/operators";
import { from } from "rxjs";
const language$ = from([
{ name: "Ruby", type: "Multiparadigma" },
{ name: "Haskell", type: "Funcional" },
{ name: "Rust", type: "Multiparadigma" },
]);
language$.pipe(pluck("name")).subscribe(console.log);
// Salida: Ruby, Haskell, Rust
Obtener una propiedad anidada de un objeto
import { pluck } from "rxjs/operators";
import { of } from "rxjs";
const githubUser$ = of(
{ name: "zaldih", stats: { repositories: 23 } },
{ name: "NyaGarcia", stats: { repositories: 30 } },
{ name: "caballerog", stats: { repositories: 89 } },
{ name: "tonivj5", stats: { repositories: 51 } }
);
githubUser$.pipe(pluck("stats", "repositories")).subscribe(console.log);
// Salida: 23, 30, 89, 51
Proyectar cada click a la propiedad tagName del elemento target del click
import { fromEvent } from "rxjs";
import { pluck } from "rxjs/operators";
const clicks = fromEvent(document, "click");
const tagNames = clicks.pipe(pluck("target", "tagName"));
tagNames.subscribe((x) => console.log(x));
pluck(k1: K1): OperatorFunction<T, T[K1]>
k1 | Tipo: K1 . |
OperatorFunction<T, T[K1]>
pluck(k1: K1, k2: K2): OperatorFunction<T, T[K1][k2]>
k1 | Tipo: K1 . |
k2 | Tipo: K2 . |
OperatorFunction<T, T[K1][k2]>
pluck(k1: K1, k2: K2, k3: K3): OperatorFunction<T, T[K1][k2][K3]>
k1 | Tipo: K1 . |
k2 | Tipo: K2 . |
k3 | Tipo: K3 . |
OperatorFunction<T, T[K1][k2][K3]>
pluck(k1: K1, k2: K2, k3: K3, k4: K4): OperatorFunction<T, T[K1][k2][K3][k4]>
k1 | Tipo: K1 . |
k2 | Tipo: K2 . |
k3 | Tipo: K3 . |
k4 | Tipo: K4 . |
OperatorFunction<T, T[K1][k2][K3][k4]>
pluck(k1: K1, k2: K2, k3: K3, k4: K4, k5: K5): OperatorFunction<T, T[K1][k2][K3][k4][K5]>
k1 | Tipo: K1 . |
k2 | Tipo: K2 . |
k3 | Tipo: K3 . |
k4 | Tipo: K4 . |
k5 | Tipo: K5 . |
OperatorFunction<T, T[K1][k2][K3][k4][K5]>
pluck(k1: K1, k2: K2, k3: K3, k4: K4, k5: K5, k6: K6): OperatorFunction<T, T[K1][k2][K3][k4][K5][k6]>
k1 | Tipo: K1 . |
k2 | Tipo: K2 . |
k3 | Tipo: K3 . |
k4 | Tipo: K4 . |
k5 | Tipo: K5 . |
k6 | Tipo: K6 . |
OperatorFunction<T, T[K1][k2][K3][k4][K5][k6]>
pluck(...properties: string[]): OperatorFunction<T, R>
properties | Tipo: string[] . |
OperatorFunction<T, R>
Documentación oficial en inglés