[英]How to implement following using rxjs Observables?
如何在rxjs中使用Observables實現以下代碼?
我要在這里實現的是,我有一個函數數組,每個函數接受一個對象,對其進行修改,然后將該對象返回到堆棧中的下一個函數。
function A(res:SomeType){
//Do Something
return res;
}
function B(res:SomeType){
//Do Something
return res;
}
function C(res:SomeType){
//Do Something
return res;
}
let fnPipe = [];
fnPipe.push(A);
fnPipe.push(B);
fnPipe.push(C);
obj= {key:"val"};
fnPipe.forEach((fn)=>{
obj= fn(obj);
});
console.log(obj);
如何在rxjs中使用Observables實現相同的目標?
let fn$ = Observable.from([
x => x + "a",
x => x + "b",
x => x + "c"
])
let value$ = Observable.of("x", "y", "z")
value$
.concatMap(val => fn$.scan((acc, fun) => fun(acc), val))
.subscribe(console.log)
/* prints
"xa"
"xab"
"xabc"
"ya"
"yab"
"yabc"
"za"
"zab"
"zabc" */
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.