RxJs(打字稿)转置

时间:2021-07-20 18:42:01

标签: typescript rxjs

目前我正在研究一种在 RX.JS 中转置对象数组(在这种情况下为字符串)的非常简单的方法。

目前的代码是这样的:

const observableArray = [from(["A1", "A2", "A3"]),from(["B1", "B2"]),from(["C1", "C2","C3"])];
const source$ = zip(...observableArray);
const myTask = source$.pipe(mergeMap(x=>x),toArray()).toPromise();
.....

并且输出是: [ 'A1', 'B1', 'C1', 'A2', 'B2', 'C2' ] 由于 zip 运算符的行为(以及observable 包含 B... 数组)。

但我想要实现的是所有元素都被转置:像这样:['A1','B1','C1','A2','B2','C2','A3',' C3' ](等待所有可观察的完成)

有什么想法吗?

我可以通过使所有数组大小相同(使用空对象)并在最后一步将它们过滤掉来做到这一点,但我真的想知道我是否可以以更 RXJS 的方式来做到这一点

提前谢谢,

0 个答案:

没有答案