El método de tubería del objeto observable en rxjs

Código fuente:

import { of } from 'rxjs';
import { Injectable } from '@angular/core';
import { map } from 'rxjs/operators';
import { tap } from 'rxjs/operators';

@Injectable()
export class JerrySandBoxService{
    name = 'Jerry';
    print(){
        const observable = of(1, 2, 3);
        const newObservable = observable.pipe(
            tap(num => console.log(num)),
            map(num => 'hello world: ' + num)
        );
        newObservable.subscribe(data => console.log(data));
    }
}

Ejecute la función de mapa antes de ejecutar la tubería:

map devuelve una nueva función:

A continuación, ejecute la función de tubería: parámetros de longitud variable de operaciones, incluidas dos operaciones de tap y map.


La implementación de pipeFromArray usa el cierre de JavaScript:

Hasta ahora, las funciones de flecha en el toque y el mapa que pasamos no se han ejecutado hasta que se llama al método de suscripción:

En este momento, para 1, 2 y 3 en la matriz, primero ejecute las operaciones de tap y map en la canalización, y luego use la salida de la operación de mapa como entrada para ejecutar la devolución de llamada especificada en la suscripción:

Para obtener más artículos originales de Jerry, siga la cuenta pública "Wang Zixi":

Supongo que te gusta

Origin blog.csdn.net/i042416/article/details/108600630
Recomendado
Clasificación