Reputation: 383
how to pass pipes as parameter , I mean something like this :
var mypipes = [
pipeA(() => {
alert("a");
})
,
pipeB(() => {
alert("b");
})
];
of(arg1, arg2, arg3).pipe(mypipes).subscribe();
I got this error : provides no match for the signature '(source: Observable): Observable'
Upvotes: 0
Views: 418
Reputation: 96969
You can use just pipe(...operators)
but you'll have to define exact length of your array so pipe()
knows what override to use:
const operators: [OperatorFunction<number, number>, OperatorFunction<number, number>] = [
tap(v => console.log(v)),
tap(v => console.log(v)),
];
of(1, 2).pipe(...operators).subscribe((v) => console.log(v));
Or you could use just [any, any]
as well.
Live demo: https://stackblitz.com/edit/rxjs-s9efsr?devtoolsheight=60
Upvotes: 3