javascript - Hva er den eksakte forskjellen mellom pipe og map i Angular 7?


Jeg har søkt mye om dette, men jeg klarer ikke å finne forskjellen mellom pipe og map i Angular 7? Er det nødvendig å bruke pipe i Service.ts-filen i Angular 7?

Takk

Svar #1

Med rxjs 5.5 og nyere, hvis du vil bruke en hvilken som helst operator på et observable, bare bruk pipe på dem. Så her er map bare en av disse operatorene innenfor pipe.

eks Nyere versjoner 5.5+:

const example = source.pipe(map(val => val + 10), first());

For tidligere versjoner av rxjs fantes det ikke noe pipe-nøkkelord. Flere operatorer ble kombinert ved bruk av .-notasjon

eks Eldre versjoner:

const example = source.map(val => val + 10).first();

Svar #2

map(), filter(), concat() og flatMap() er operatorene som tilbys av RxJS-biblioteket. Du kan bruke pipes for å koble disse operatorene sammen. Pipes lar deg kombinere flere funksjoner til en enkelt funksjon som følger:

import { filter, map } from 'rxjs/operators';

const squareOddVals = pipe(
filter((n: number) => n % 2 !== 0),
map(n => n * n)
);

Relaterte artikler