Javascript 两个可观测的RxJS concat

Javascript 两个可观测的RxJS concat,javascript,angular,rxjs,concat,Javascript,Angular,Rxjs,Concat,我正在尝试连接两个Obs1和Obs2。Obs1发出5,6,7。Obs2发送1,2,3,4。我是concating->concat(Obs2,Obs1) 在我的订阅服务器中预期为1,2,3,4,5,6,7,但仅获得1,2,3,4。我做错了什么 let Obs1=new rxjs.Subject(); 设Obs2=new rxjs.Subject(); 函数sendToObs1(x){ 表1.下一(x) } 异步函数sendToObs2(){ 让trns=等待getValues(); for(设i

我正在尝试连接两个Obs1和Obs2。Obs1发出5,6,7。Obs2发送1,2,3,4。我是concating->concat(Obs2,Obs1)

在我的订阅服务器中预期为1,2,3,4,5,6,7,但仅获得1,2,3,4。我做错了什么

let Obs1=new rxjs.Subject();
设Obs2=new rxjs.Subject();
函数sendToObs1(x){
表1.下一(x)
}
异步函数sendToObs2(){
让trns=等待getValues();
for(设i=0;i{
setTimeout(()=>解析([1,2,3,4]),10)
})
};
concat(Obs2,Obs1).订阅({
下一步:x=>console.log(“接收:+x”),
完成:()=>console.log(“完成”)}
)
sendToObs2()
sendToObs1(5)
sendToObs1(6)
sendToObs1(7)
//输出
//收到:1
//收到:2
//收到:3
//收到:4
//期望
//收到:1
//收到:2
//收到:3
//收到:4
//收到:5
//收到:6
//收到:7

Concat仅在Obs2完成后订阅

let Obs1=new rxjs.ReplaySubject();
设Obs2=new rxjs.Subject();
函数sendToObs1(x){
表1.下一(x)
}
异步函数sendToObs2(){
让trns=等待getValues();
for(设i=0;i{
setTimeout(()=>解析([1,2,3,4]),10)
})
};
concat(Obs2,Obs1).订阅({
下一步:x=>console.log(“接收:+x”),
完成:()=>console.log(“完成”)}
)
sendToObs2()
sendToObs1(5)
sendToObs1(6)
sendToObs1(7)
//输出
//收到:1
//收到:2
//收到:3
//收到:4
//期望
//收到:1
//收到:2
//收到:3
//收到:4
//收到:5
//收到:6
//收到:7