zoukankan      html  css  js  c++  java
  • 5-7 操作符和 Async 管道

    rxjs的精彩之处是它可以有一些操作符。它有非常强大的操作符。它不仅仅限于这个表达形式

    filter是用来过滤的。

    然后再用map获取到tabLinkk这个参数。它有一组参数,但是我们只关心 tabLink.
    这个流当中本来是一组参数,我只得到tabLink这一个参数




    批量把param改名字。按住F2同时整体改名字。




    rxjs是一个数据流,pipe是管道,在这个管道中,我们用了各种各样的操作符。可以把操作符想象成 各个弯头,闸门,它会水流变换成不同的样子。
    filter相当于是分流,拦住一些东西,放行一些东西。
    map相当于原来的水流是粗的或者细的,我把它转换成另外一种形式。它是一个变形的东西。

    可以任意的操作这些数据流


    下面这里看起来还不是很优雅





    那么html内我们怎么使用它呢?


    通过async管道。记住用括号括起来。括号里面就表示它的优先级别比较高。先进行管道的转换然后再和hot作比较。
    async就是在模板中帮你做订阅,

    带来好处是你不用再去写脏值监测,angular会帮你做处理。

    页面效果


    功能实现了,并且用了更少的代码

    这里加$符号是rxjs惯例的一个写法。加上$符号让你意识到它是一个流

    改造2

    这里进行修改










    页面效果不变

    这样做的好处

    这样做的好处是,我们不需要清理订阅。
    正常情况下 需要你在ngDestory里面要清理订阅函数。

    像这种,我们就要清理订阅,如果不取消订阅的话,就会有内存泄露。


    并是不所有的情况都用async管道的。


    有的时候还是要用标准的subscribe去做。一定要记住要在ngDestory的时候去取消订阅。

    HomeContainer改造。




    这样可以把它变成onPush,因为我们使用了async管道。就可以把它变为一个笨组件了。

     

    结束




     

  • 相关阅读:
    「BZOJ4763」雪辉
    「CSA72」MST
    「CSA49」Bunny on Number Line
    「CSA49」Card Collecting Game
    Java indexOf() 方法
    MySQL执行计划分析
    NIO编程
    数据结构可视化
    深入理解二阶段提交协议(DDB对XA悬挂事务的处理分析)(一)
    linux下nohup日志切割方案
  • 原文地址:https://www.cnblogs.com/wangjunwei/p/13588929.html
Copyright © 2011-2022 走看看