订阅 Observable 的时候,可以给 subscribe 方法提供一个 Observer 对象,在这个对象里面,可以设置一下在 Observable 上发生的不同的事情,主要会发生三种事情。Observable 上产生数据,Observable 出现了错误,还有 Observable 完成了。
添加一个 observer ,它是一个对象,对象里有三个属性,一个是 next ,它的值是个方法,这个方法里面可以设置一下 Observable 上生产出来数据之后要做的事情。数据的名字可以叫它 value ,要做的事情是在控制台上输出生产出来的这个数据。
observer 上还可以添加一个 error 属性,这个属性的值也是一个方法,这个方法做的事情就是在 Observable 上发生数据的时候要做些什么。可以在控制台上输出 error。
最后还有一个 complete 属性,值是个方法,在这个方法里,你可以设置 Observable 完成以后要做的事情,输出一个 Demo observable completed.
再把创建的这个 observer,交给 subscribe 方法。
预览
回到浏览器,按一下 Subscribe 按钮,这次订阅组件里的 demoObservable 的时候,提供了一个 observer 对象,它里面设置了不同情况下要做的事情,比如在有数据的时候,要做的事情就是在控制台上输出这个数据。
这个 Observable 没有发生任何错误,所以没有输出错误。
Observable 完成以后,输出了一个 Demo observable completed.
在订阅 Observable 的时候提供的 Observer 对象里面,你不需要提供所有的属性,因为有些 Observable 永远不会完成,所以订阅它的时候在 observer 里面提供 complete 属性就没有意义了。