Zor*_*hgo 2 rxjs typescript angular
我一直把头发拉出来.有没有人想出下面的Angular 2打字稿代码块中订阅者的类型?
let obs: Observable<string> = Observable.create((subscriber) => { ... })
Run Code Online (Sandbox Code Playgroud)
Create用于Observables使用自定义订阅行为进行创建.
传递给Observable.create方法的函数定义了Observable订阅时应该发生的行为.因此,subscriber传入的将是实现Observer<T>接口的对象.
例如,下面的代码会Observable在订阅时创建一个,然后发出两个值然后完成(对于任何语法错误提前道歉,我不使用TypeScript):
let obs: Observable<string> = Observable.create((subscriber) => {
subscriber.next("Hello");
subscriber.next("World!");
subscriber.complete();
});
//Here is a subscriber that we define to subscribe to the Observable
let sub: Subscriber<string> = Subscriber.create(
(x) => console.log(x),
null,
() => console.log("Done"));
//At this point the method you passed to Observable.create will be invoked
obs.subscribe(sub);
//Output:
//Hello
//World!
//Done
Run Code Online (Sandbox Code Playgroud)
请注意,这实际上并不执行此代码,而是定义新订阅服务器通过调用obs.subscribe(subscriber)
Or或函数进行订阅时将遵循的行为
:
obs.subscribe((x) => console.log(x);
在许多情况下,create没有必要使用,因为大多数常见事件排放源都有包装,所以你没有
| 归档时间: |
|
| 查看次数: |
10320 次 |
| 最近记录: |