RxJS是将3个数组合并为一个数组的正确方法,作为可观察的
嗨,我有3个受试者(他们可能是可见的) 假设这些主题包含这些数据RxJS是将3个数组合并为一个数组的正确方法,作为可观察的,rxjs,observable,Rxjs,Observable,嗨,我有3个受试者(他们可能是可见的) 假设这些主题包含这些数据 arr1 = ['1','2'], arr2 = ['3','7'], arr3 = ['4'] 我想创建一个observable(mergedObservable),它将这3个observable中最新的一个合并到一个数组中,结果是这样一个数组: [1'、'2'、'3'、'7'、'4'] so that I can achieve this this.mergedObservable.subscribe( mergedA
arr1 = ['1','2'],
arr2 = ['3','7'],
arr3 = ['4']
我想创建一个observable(mergedObservable),它将这3个observable中最新的一个合并到一个数组中,结果是这样一个数组:
[1'、'2'、'3'、'7'、'4']
so that I can achieve this
this.mergedObservable.subscribe( mergedArray => {
console.log(mergedArray)
})
// ['1','2','3','7','4']
我正在努力解决如何使这个“可合并服务”。我试过类似的东西
CombineTest(arr1$、arr2$、arr3$),但我仍然需要“链接”更多将合并3的功能
谢谢
combinelatetest
采用可选的project
函数,可用于修改组合值
您可以指定一个project
函数,该函数使用Array.prototype.reduce
将阵列展平为单个阵列:
const arr1$=new Rx.BehaviorSubject(['1','2']);
const arr2$=新的接收行为主体(['3','7']);
const arr3$=新接收行为主体(['4']);
可观测
.联合测试(
arr1$,arr2$,arr3$,
(…数组)=>arrays.reduce((acc,array)=>[…acc,…array],])
)
.subscribe(值=>console.log(值))代码>
。作为控制台包装{最大高度:100%!重要;顶部:0;}
组合测试
采用可选的项目
函数,可用于修改组合值
您可以指定一个project
函数,该函数使用Array.prototype.reduce
将阵列展平为单个阵列:
const arr1$=new Rx.BehaviorSubject(['1','2']);
const arr2$=新的接收行为主体(['3','7']);
const arr3$=新接收行为主体(['4']);
可观测
.联合测试(
arr1$,arr2$,arr3$,
(…数组)=>arrays.reduce((acc,array)=>[…acc,…array],])
)
.subscribe(值=>console.log(值))代码>
。作为控制台包装{最大高度:100%!重要;顶部:0;}
假、假、api是不同的数组或源
combineLatest(fake, fake1, api)
.pipe(
map(([f,f1, apis])=>
{
return ([...f, ...f1, ...apis]);
}
)
)
.subscribe((data) => {
console.log(data);
});
fake、fake1、api是不同的数组或源
combineLatest(fake, fake1, api)
.pipe(
map(([f,f1, apis])=>
{
return ([...f, ...f1, ...apis]);
}
)
)
.subscribe((data) => {
console.log(data);
});
比你强!我不理解的是“项目”功能。非常感谢。比你还感谢!我不理解的是“项目”功能。非常感谢。