timer(0, 1000) // 计时器,每1000ms发射一个值,初始发射值延迟时间为0s;
.pipe(
take(5), // 取前5个值
takeWhile(value => value >-1), // 只要有一个值不大于-1;即执行complete;结束next
materialize(), // 具体化,将每一个值转换为Notification对象
)
.subscribe({
next(value) {
console.log(value);
}
});
运行结果如下:

--------------------------------------------------------------------------------------------------------------

  • materialize是将Observable弹射出的事件资料转换成Notification物件/对象;
  • dematerialize是将Notification物件/对象转换为Observable的事件资料。
-------------------------------------------------------------------------
timer(0, 1000) // 计时器,每1000ms发射一个值,初始发射值延迟时间为0s;
.pipe(
take(5), // 取前5个值
takeWhile(value => value >-1), // 只要有一个值不大于-1;即执行complete;结束next
materialize(), // 具体化,将每一个值转换为Notification对象
dematerialize(), // 跟materialize操作相反;将Notification对象转换为Observable对象
)
.subscribe({
next(value) {
console.log(value);
}
});
运行结果如下:
of(1, 2, 3, 'a', 4)
.pipe(
materialize(),
map(x => x.kind === NotificationKind.COMPLETE ? x : new Notification(x.kind, x.value + ' hello'))
)
.subscribe(value => {
console.log(value);
});

通过上述的范例,我们能知道一个Notification至少包含了几个资讯

  1. kind: 目前资料的状态: N (Next), E (Error), C (Complete)
  2. value: 值/资料
  3. hasValue: 是否有包含资料
  4. error: 错误讯息

也可以直接使用new Notification()的方式建立。


 
												

Rxjs中Notification 介绍的更多相关文章

  1. RxJS 中的观察者和迭代器模式

    目录 前言 观察者模式 迭代器模式 RxJS 中两种模式的结合和实现 小结 参考 1. 前言 RxJS 是一个库,它通过使用observable(可观察对象)序列来编写异步和基于事件的程序.其结合了观 ...

  2. [BIM]BIM中IDM介绍

    参考:http://blog.fang.com/25866228/10613454/articledetail.htm IDM的全称是Information Delivery Manual,信息交付手 ...

  3. ios中框架介绍

    ios中框架介绍 参考博客: 参考文章:框架介绍 框架介绍 框架就是一个目录,一个目录包含了共享库,访问共享库里面的代码的头文件,和其他的图片和声音的资源文件.一个共享库定义的方法和函数可以被应用程序 ...

  4. Burp Suite Intruder中爆破模式介绍

    Burp Suite Intruder中爆破模式介绍 - Introduction to Burst Mode in Burp Suite Intruder 1.sniper模式  使用单一的Payl ...

  5. Django中ORM介绍和字段及字段参数 Object Relational Mapping(ORM)

    Django中ORM介绍和字段及字段参数   Object Relational Mapping(ORM) ORM介绍 ORM概念 对象关系映射(Object Relational Mapping,简 ...

  6. Swift中Notification.Name这么难用怎么办

    Swift中Notification.Name这么难用怎么办 以前的发送通知的参数就是一个简单的字符串: NSNotificationCenter.defaultCenter().post(" ...

  7. RxJS 中的创建操作符

    RxJs 中创建操作符是创建数据流的起点,这些操作符可以凭空创建一个流或者是根据其它数据形式创建一个流. Observable的构造函数可以直接创建一个数据流,比如: const $source=ne ...

  8. [转]C# 互操作性入门系列(一):C#中互操作性介绍

    传送门 C#互操作系列文章: C# 互操作性入门系列(一):C#中互操作性介绍 C# 互操作性入门系列(二):使用平台调用调用Win32 函数 C# 互操作性入门系列(三):平台调用中的数据封送处理 ...

  9. 6月20日 Django中ORM介绍和字段、字段参数、相关操作

    一.Django中ORM介绍和字段及字段参数 二.Django ORM 常用字段和参数 三.Django ORM执行原生SQL.在Python脚本中调用Django环境.Django终端打印SQL语句 ...

随机推荐

  1. RTB业务知识2-Open-RTB全景

    一个.前言 openrtb这是一套开源的竞价广告系统,来自IAB贡献,井. 有许多值太借鉴,提供sdk api接口文档介绍,整理了相关的资料.主要包含其生态图体系.业务流程和基本的对象模型和数据模型. ...

  2. 短暂聊天VS温馨提示

    介绍 作为一个合作格该程序猿,使用的开发工具的熟练使用是我们必须掌握的. 而作为一名优秀的程序猿.我们不仅要能熟练的使用.并且还要去高效的使用. 而作为.Net平台专门定制的开发工具VS那当然是我们必 ...

  3. Eclipseproject标准的文件夹层次

    为什么特别写一个文档首场讲座解释什么层次,你是eclipse正在使用java.io.File类在读workspace档,我相信不知道eclipse,为了避免以后再出现这样的令人难堪的情况,还是编写这样 ...

  4. jquery权限选择

    <!DOCTYPE html><html><head><meta http-equiv="Content-Type" content=&q ...

  5. Springboot统一配置Jackson

    经常要为接口响应对象设置属性,序列化的时候是不是包含空值,反序列化的时候是否忽略不认识的字段.所以,必须要手动制定ObjectMapper或者在类上声明 @JsonInclude(Include.NO ...

  6. 【WPF】右下角弹出自定义通知样式(Notification)——简单教程

    原文:[WPF]右下角弹出自定义通知样式(Notification)--简单教程 1.先看效果 2.实现 1.主界面是MainWindow 上面就只摆放一个Button即可.在Button的点击事件中 ...

  7. WPF:如何为程序添加splashScreen?

    原文:WPF:如何为程序添加splashScreen? 大家是否还记得在Windows Forms程序中如何实现splashScreen吗?我们一般都会使用Microsoft.VisualBasic. ...

  8. Linux命令扫盲 之 sar

    今天在读<大规模Web服务开发技术>一书的时候,书中提到了sar这个命令,感觉很有用,有必要整理学习一下.(对于一位Linux初学者,不能放过任何一个学习机会 :P) 打开自己的CentO ...

  9. Win8Metro(C#)数字图像处理--2.20图像垂直镜像

    原文:Win8Metro(C#)数字图像处理--2.20图像垂直镜像  [函数名称] 图像垂直镜像函数MirrorYProcess(WriteableBitmap src) [函数代码]      ...

  10. C#图片保存与读取,以及图片另存

    照片的保存与读取 /// <summary> /// 图片转二进制 /// </summary> /// <param name="imgPhoto" ...