【发布时间】:2019-12-19 11:28:15
【问题描述】:
在下面的示例代码中,testSubj 通过take 运算符订阅了两次sourceSubj 其中之一。似乎发生的情况是,当 take Observable 完成时,它会导致 testSubj 完成,即使它仍然有一个有效的订阅。
我的问题是,为什么会出现这种行为?有没有办法阻止主题完成?
rxjs 6.4
import { Subject } from 'rxjs';
import { take } from 'rxjs/operators';
const sourceSubj = new Subject<string>();
const testSubj = new Subject<string>();
testSubj.subscribe({
next: s => console.log(`next: ${s}`),
complete: () => console.log(`completed`)
});
sourceSubj.pipe( take(1) ).subscribe(testSubj);
sourceSubj.subscribe(testSubj);
sourceSubj.next('1');
【问题讨论】:
标签: javascript typescript rxjs