欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 前端技术 > javascript >内容正文

javascript

[译]RxJS文档04——Observer 观察者

发布时间:2025/7/14 javascript 47 豆豆
生活随笔 收集整理的这篇文章主要介绍了 [译]RxJS文档04——Observer 观察者 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

原文: http://reactivex.io/rxjs/manu...

什么是Observer? 观察者(Observer)是Observable流推送数据的用户。观察者们(Observers)就是一组callback函数的集合,监听着每一个Observable流推送出的不同类型的通知,包括:next,error和complete。

以下是一个经典的观察者对象:

var observer = {next: x => console.log('Observer got a next value: ' + x),error: err => console.error('Observer got an error: ' + err),complete: () => console.log('Observer got a complete notification'), };

为了使用观察者,需要让他订阅一个Observable流:

observable.subscribe(observer);

观察者是一个包含三个回调函数的对象,每一个函数都时刻准备接收来自Observable流推送的不同消息。

Observer在RxJS中是被优待的。如果没有为某个类型的通知提供callback,Observable流的执行过程仍然会照常进行,但是响应的通知将会被忽略,因为观察者没有提供相应的callback来接收。

下面是一个Observer没有提供complete响应(callback)的例子:

var observer = {next: x => console.log('Observer got a next value: ' + x),error: err => console.error('Observer got an error: ' + err), };

订阅一个Observable流的时候,你也可以只提供一个callback函数作为参数,而不用完整提供一个包含三个回调的对象,就像下面的例子:

observable.subscribe(x => console.log('Observer got a next value: ' + x));

在observable.subscribe()内部,将会创建一个观察者对象(Observer object),并将第一个参数提供的callback作为next通知的响应函数。接受三个类型通知的callback也可以分别以参数的形式提供:

observable.subscribe(x => console.log('Observer got a next value: ' + x),err => console.error('Observer got an error: ' + err),() => console.log('Observer got a complete notification') );

总结

以上是生活随笔为你收集整理的[译]RxJS文档04——Observer 观察者的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。