我想使用默认值的Subject发出值。
startWith("def") 是这样做的方法。
subject = new Rx.Subject().startWith("def value");
Run Code Online (Sandbox Code Playgroud)
不幸的是startWIth返回Observable,因此我不能使用onNext(),这是我首先使用Subject的唯一原因。解决此问题的方法是什么?
subject.onNext("next val"); //cannot call onNext, it is not a function of Observable
Run Code Online (Sandbox Code Playgroud)
只需跟踪可观察对象和主题即可。我通常会做...
export class FooService {
private _foos: Subject<Foo> = new subject<Foo>();
public get foos: Observable<Foo> {
return this._foos.startsWith(...);
}
public emitFoo(foo: Foo) {
this._foos.next(foo);
}
}
Run Code Online (Sandbox Code Playgroud)