我正在从Promise世界转向Observable世界.我通常用Promise做的一件事就是将一系列任务链接起来并使它们按顺序运行.例如,我有三个任务:printLog1()打印1到控制台,printLog23()打印2和3到控制台,printLog4()打印4.
当我想打印1-2-3-4时,我会写一个类似的承诺链
printLog1()
.then(() => {
printLog23();
})
.then(() => {
printLog4();
});
Run Code Online (Sandbox Code Playgroud)
现在我想要与Observable相同的功能,我可以将printLog()函数重写为Observable
printLog1 = Rx.Observabale.of(1).map((i) => console.log(i));
printLog23 = Rx.Observabale.of(2, 3).map((i) => console.log(i));
printLog4 = Rx.Observabale.of(4).map((i) => console.log(i));
Run Code Online (Sandbox Code Playgroud)
然后我有三个observable,它们向控制台发出不同的值.如何链接它们以便这三个可观察量按顺序运行并打印1-2-3-4?