目录
前言
这篇博客主要介绍Observables的用法。
一、什么是Observables
Observables是 Rx的核心。在 Rx中我们看到“Observables”、“Observables Sequence”和“Sequence”在 Rx 中互换使用,其实它们是一个东西。 在RxSwift 中,我们把所有的数据元素统一称作序列。
这些序列可以是基本的数据类型、Json数据、Void等数据类型。
Observable 可以:
- 发出事件(数据流)
- 被订阅
- 响应事件
Observable 有三种可能事件:
- .next(value):发送一个可能的值
- .error(error):发送错误,流终止
- .completed:完成,流终止
二、创建 Observable 的几种方式
RxSwift 提供了多种方式来创建 Observable,常见的有:
1.just
1.含义
我们使用 just创建单个值的 Observable。
"just" 这个名称恰如其分,因为它所做的就是创建一个包含单一元素的可观察序列。"just" 是 Observable 类型的一个类型方法。
在 Rx 中,"just" 操作符用于创建一个包含单一元素的可观察序列(Observable sequence)。Observable 是 Rx 中的一个核心概念,它代表了一个可以发出一系列事件的对象,这些事件可以是数据项、错误或完成信号。
这里要注意的是,event回调函数中的参数是可选类型,例如在下面的例子中:
let observable = Observable.just("Hello, RxSwift!")
observable.subscribe { event in
print(event)
}
控制台输出如下:
next(Hello, RxSwift!)
completed
当我们需要使用回调函数中的值的时候,可以通过下面的代码解包:
let observable = Observable.just("Hello, RxSwift!")
observable.subscribe { event in