按照CSDN里的方法,使用JavaScript将China country code手动添加到下拉列表里,

经过测试,这种方法已经失效了,我手机一直收不到Github发送的验证码:

虽然发送验证码的请求已经成功发送给Github后台,估计后台做了基于国家的限制:

测试代码:

const a = of([1, 2, 3]);const mapFn = (data: number[]) => {for( let i = 0; i < data.length; i++){data[i] = data[i] + 1;}console.log('data: ' + data);return data;};const b = a.pipe(map(mapFn));const myGet = (data) => console.log('got: ' + data);const tt = tap(myGet);a.pipe(tt).subscribe();

nextOrObserver就是myGet:

然后执行a.pipe(tt). pipeFromArray:

this就是调用pipe的source Observable,作为输入参数source,传入tap返回的tapOperationFunction里:

return source.lift(new DoOperator(nextOrObserver, error, complete)); 返回一个新的Observable:

DoOperator的实现比MapOperator更简单,因为不含project,只是简单的执行app 传入tap的fn:


最后基于pipe返回的Observable调用subscribe:


调用DoOperator的call方法:注意此时的source参数,包含的是调用pipe之前的原始Observable:


原始Observable调用subscriber的next方法,后者会调用_tapNext:

因为subscriber变量的类型是Tapsubscriber:


更多Jerry的原创文章,尽在:“汪子熙”:

rxjs里tap操作符的使用单步调试相关推荐

  1. webpack最简单的入门教程里bundle.js之运行单步调试的原理解析

    读这篇文章的朋友,请确保对webpack有最基础的认识. 您可以阅读我前一篇文章:Webpack 10分钟入门 来在本地运行一个Webpack的hello world项目.www.toutiao.co ...

  2. 微信小程序开发系列 (二) :微信小程序的单步调试和控制器实现步骤概述

    笔者由于工作需要,曾经参加过一个微信小程序同 SAP 系统集成的项目,因此从零开始学习了微信小程序的开发知识.这里通过系列文章把自己所学分享出来,希望对相关学习者有所帮助. 本系列的前一篇文章:微信小 ...

  3. 从ngrx store里selector出来的Observable,执行subscribe的单步调试

    源代码: getNextPageContext(): Observable<PageContext> {const a = this.store.pipe(select(RoutingSe ...

  4. 单步调试理解webpack里通过require加载nodejs原生模块实现原理

    在webpack和nodejs里,我们经常使用require函数加载原生模块或者开发人员自定义的模块. 原生模块的加载,比如: const path = require("path" ...

  5. linux下gdb单步调试

    用 GDB调试程序 GDB 概述 ---- GDB 是 GNU开源组织发布的一个强大的 UNIX下的程序调试工具.或许,各位比较喜欢那种图形界面方式的,像 VC. BCB等 IDE的调试,但如果你是在 ...

  6. 理解First Chance和Second Chance避免单步调试

    原文链接地址:http://blog.csdn.net/Donjuan/article/details/3859160 在现在C++.Java..Net代码大行其道的时候,很多代码错误(Bug)都是通 ...

  7. IAR 单步调试很慢

    Q:用IAR开发stm32f103,发现单步调试的快慢和设定的栈大小有关系,当栈设定较小时单步调试就很快,当栈设定的很大的时候,单步调试就特别特别慢,当栈设定到 100K 的时候几乎就卡死了(实际上没 ...

  8. 关于 Angular view Query 的 id 选择器问题的单步调试

    问题描述 我有这样一个 Angular Component,模板文件如下: @Component({ selector: 'example-app', template: ` <pane id= ...

  9. 通过单步调试的方式学习 Angular 中带有选择器的内容投影使用方式

    问题描述 我创建了一个 selector 为 app-content-section 的 Component,用于容纳内容投影(content projection): 这个 Component 的模 ...

最新文章

  1. Win2003 安全设置大全
  2. Gentoo 安装日记 15 (配置内核 :固件驱动..文件系统以及其他)
  3. JDBC学习笔记02【ResultSet类详解、JDBC登录案例练习、PreparedStatement类详解】
  4. Citrix桌面及应用虚拟化系列之三:活动目录架构准备
  5. Java Stream ORM现在带有JOIN
  6. C 控制父、子进程的先后顺序执行
  7. 链家信息python
  8. Requests redirect
  9. HDU2520 我是菜鸟,我怕谁【水题】
  10. iOS实现一个颜色渐变的弧形进度条
  11. Flash Builder4破解步骤
  12. LINUX编译mate-desktop/pluma-1.24.0文本编辑器
  13. 太极发送卡片软件_太极APP的入门级使用方法
  14. 数学建模常用算法—模糊综合评价
  15. MATLAB绘图—三维等值线绘图(contour3)
  16. 抖音服务器升级中无法修改名字,抖音名字改不了怎么回事
  17. 我的web前端工作日记2------web前端工作的一天
  18. codingdojo kata 之fizzbuzz
  19. Ubuntu/Debain下安装微信、QQ等Windows应用(最简便方法)
  20. 智能展示技术在淘宝封面图的应用

热门文章

  1. Android自己定义组件系列【4】——自己定义ViewGroup实现双側滑动
  2. 试解析Tomcat运行原理(一)--- socket通讯(转)
  3. JavaScript中为何要使用prototype
  4. eclipse不能调试运行Android程序问题的解决办法
  5. 其实我就是个技术迷-自身定位及展望
  6. WCF,简单而又复杂的东西
  7. 获取32R的图像的直方图的一个算法
  8. BZOJ1079 [SCOI2008]着色方案 记忆化搜索
  9. 服务发现比较:Consul vs Zookeeper vs Etcd vs Eureka
  10. Python list 和 tuple 使用小记