多种方式,都涉及隐藏您的主题并为消费者提供包装的可观察量:
想知道什么时候订阅你的主题?
const subject = new Subject();
const observable = Observable.defer(() => {
someoneJustSubscribed();
return subject;
});
return observable;
Run Code Online (Sandbox Code Playgroud)
想知道有人取消订阅的时间?
const subject = new Subject();
const observable = subject.finally(() => someoneJustUnsubscribed());
return observable;
Run Code Online (Sandbox Code Playgroud)
想知道两者吗?
const subject = new Subject();
const observable = Observable.create(observer => {
someoneJustSubscribed();
const sub = subject.subscribe(observer);
return () => {
someoneJustUnsubscribed();
sub.unsubscribe();
}
});
return observable;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
658 次 |
| 最近记录: |