美文网首页
RxSwift学习历程(一)

RxSwift学习历程(一)

作者: 时速八十迈 | 来源:发表于2018-01-18 09:20 被阅读0次

不讲废话,相信来学RxSwift的同学,都对响应式编程(reactive programing)有了概念层面上的认识,在此,我们只向大家介绍RxSwift中的关键点。不多说了,上干货了

什么是Observables

在RxSwift中,被提到最多的一个东西就是它----Observables(可观测量)。那么什么是Observables呢。下面是官方文档对它的定义:

简而言之就是:Observables是Rx的心脏,observable、observable sequence、sequence是一个东西,在极客口中,他们被称作sequence(序列)即“流”。在RxSwift中,万物皆序列,也可以说是万物皆流。万物包括对象object,事件event,代理delegate等等。

Observables的生命周期

在Rx中,Observables的生命周期有三种情况:

1、observable发出包含许多元素的next事件,直到出现以下情况,observable停止:

2、发出一个error事件且被终止;

3、发出一个completed事件且被终止。

另:一旦observable被终止,其将不能再发出任何事件。

即:

创建observables

如下例:(可在playground中使用大括号内部代码,记得导入Rx)

在这个例子中,我们定义了几个integer常量,以备范例使用;创建了一个Int类型的observable sequence,使用了携带‘one’整型的just方法

just是一个很恰当的方法,其意为“仅仅”,也就是说,just方法里只能携带一个元素。just是关于Observables的一个类型方法。在Rx中,方法被称作为operator(操作符)。如若添加以下代码:

发现不同了吗,这一次,我们并没有明确observable2的类型,但是,系统根据你后面的赋值,推测出你所创建的observable2是一个Int类型的序列,而非Array类型的。这是因为,of操作符操作了“经由observables的元素推理出的可变参数类型”。

如果想创建一个Array类型的observable,只需要,在of操作符后面添加一个数组即可,如下:

当然,有of,就一定有from,如下

这个from操作符是啥意思呢,我们来看看官方给的解释:The from operator creates an observable of individual type instances from a regular array of elements.翻译过来就是:from操作符从一个常规的元素数组中创建一个单个类型实例的observable。另:from操作符只能作用于数组。

小结:学习了什么是序列(或者说流)、Observables的生命周期(next,error,completed及“序列终止不能发出新事件”)、如何创建observables以及三个操作符:just(只能携带一个元素的操作符),of(确定序列类型的操作符),from(从数组中创建一个单个类型实例的observable)

相关文章

  • RxSwift学习历程(一)

    不讲废话,相信来学RxSwift的同学,都对响应式编程(reactive programing)有了概念层面上的认...

  • RxSwift学习历程(二)

    上一篇,我们学习了如何创建一个observable,接下来我们继续学习,直接开始吧 订阅序列(Subscribin...

  • RxSwift学习(一)

    学习RXSwift比较好的文章:RxSwift 系列(一) -- ObservablesRxSwift 系列(二)...

  • 需要具备知识

    RXSwift 学习

  • RxSwift学习(一) -- RxSwift初探

    一、关于Swift 苹果公司有两种开发语言,大儿子Objective-C,这几年已经很久没更新过新东西了,小儿子S...

  • RxSwift

    为什么要学习RxSwift 使用RxSwift可以统一的处理Delegate、KVO、Notification,可...

  • 2021-12-15

    RxSwift 学习资料: https://beeth0ven.github.io/RxSwift-Chinese...

  • RxSwift-Timer源码分析

    要学习RxSwift-Timer的实现逻辑,可以先看RxSwift核心逻辑分析。理解RxSwift核心逻辑后,在来...

  • RxSwift(四)-- RxSwift几个常用高阶函数介绍

    对于RxSwift的重点学习,我们还得需要知道RxSwift的高阶函数,掌握好了RxSwift的高阶函数,是你通往...

  • RxSwift学习(一)

    1.理论基础 1.Reactive Programing 什么是响应式编程呢? 一般情况下,我们都是针对某个状态,...

网友评论

      本文标题:RxSwift学习历程(一)

      本文链接:https://www.haomeiwen.com/subject/caayoxtx.html