Fisrt观察到的第二次超时后返回的收益

问题描述 投票:0回答:1

我有2个观察值。

这是返回可观察值的方法

const rxjs = require('rxjs');
const op = require('rxjs/operators');


const retornaObs = (arg, timeout) => {
    return rxjs.of(arg)
    .pipe(tap(res => {
        setTimeout(() => {
            console.log(res);
        }, timeout);
    }));
}

和呼叫者

retornaObs([1,2,3], 4000)
.pipe(op.switchMap(() => {
    return retornaObs([4,5,6], 2000);
})).subscribe()

[执行此操作时,我的返回值是[4,5,6],然后是[1,2,3],但是我需要顺序返回。

angular observable rxjs6
1个回答
0
投票

也许您需要一个名为Concat的RxJS运算符。

看看here

© www.soinside.com 2019 - 2024. All rights reserved.