一、创建类操作符
 
1.创造的定义:是指这些操作符不依赖任何其他Observable对象,就可以凭空或者根据其他数据源创造出一个Observable对象。
 
2.创建类操作符就是数据的源头,因此大部分创建类操作符都是静态操作符
 
二、创建同步数据流
 
1.对于同步数据流,数据之间的时间间隔可以忽略不计。
 
2.create是最简单的创建操作,内部就是直接调用创建Observable的构造函数,不需要导入任何其他模块就可以使用。(静态)
 
源码如图:
 
 
3.of,用于列举数据,产生数据是同步的,数据产生后,Observable也完结,并且of属于cold Observable,所以对于任何一个Observer订阅者都会吐出同一组数据,所以可以反复使用。(静态)
适用场景:想把已知不多的数据转成Observable对象,进行处理。
  ps:该方法在rxjs 4版本中名为just,所以如果要升级rxjs,则需要更名操作。
 
4.range,指定范围,传入参数指定开始值和长度,即可产生序列,第一个参数不一定要是整数,可以为1.5或者其他任何数字,每次只能递增1。(静态)
  适用场景:产生一个很大连续数字序列。
 
5.generate,循环创建,定制性更强,第一个参数为值,初始值,第二个参数为函数,表示继续的条件,第三个参数为函数,表示值的递增,第三个参数为函数,表示结果,应该保持这三个函数都是纯函数。(静态)
  适用场景:若在js中使用for循环实现,是用哪个rxjs实现就可以使用generate。
 
6.repeate,重复数据的数据流,可以重复上游Observable中的数据若干次,而且会在上游执行完后才会执行,若上游不执行complete,则repeate无法正常执行,该方法中参数表示重复的次数,若不传参数或为负数,则无限次执行。(动态)
  ps:该方法在rxjs 4版本中为静态操作符,可传入两个参数,第一个为循环的对象,第二个是循环的次数。
 
7.empty,产生一个直接完结的Observable,没有参数,不产生任何数据。
 
8.throw方法昌盛的Observable对象什么也不做,直接报错,传入的参数就是报错的信息。
  ps:注意throw是js中的关键字,导入时可使用别名。
 
9.never,真正的什么也不做,直到永远。
 
 
 
 

posted on 2018-09-21 16:20  晏倾风  阅读(1112)  评论(0编辑  收藏  举报