位置: 编程技术 - 正文

Angular2的管道Pipe的使用方法(angular的排序管道)

编辑:rootadmin

推荐整理分享Angular2的管道Pipe的使用方法(angular的排序管道),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:angular 管道,angular 2,angular的排序管道,angular的排序管道,angular 管道,angular 管道,angular 管道,angular 管道,内容如对您有帮助,希望把文章链接给更多的朋友!

管道Pipe可以将数据作为输入,然后按照规则将其转换并输出。在Angular2中有许多内置的Pipe,比如DatePipe、UpperCasePipe和CurrencyPipe等。在这里我们主要介绍如何自定义Pipe。

1. 管道定义

Pipe的定义如下代码所示:

如代码所示,

需要使用@Pipe来装饰类 实现PipeTransform的transform方法,该方法接受一个输入值和一些可选参数 在@Pipe装饰器中指定管道的名字,这个名字就可以在模板中使用。

注意:当定义完成后,不要忘记在Module的declarations数组中包含这个管道。

2. 管道使用

user.template.html实现如下所示:

user.component.ts实现如下所示:

在user.component.ts中初始了数据users和定义一个添加user的方法,在user.template.html中使用自定义管道filterUser。

Angular2的管道Pipe的使用方法(angular的排序管道)

当启动应用时,可以发现只有id大于3的user被显示出来了。可是,当你点击按钮添加用户时,发现并没有什么反应,数据并没有改变。这是为什么呢?

3. 数据变更检测

在Angular2中管道分为两种:纯管道和非纯管道。默认情况下管道都是纯管道。

纯管道就是在Angular检测到它的输入值发生了纯变更时才会执行管道。纯变更也就是说原始数据类型(如String、Number和Boolean等)或者对象的引用发生变化。该管道会忽略对象内部的变化,在示例中,数组的引用没有发生改变,改变的只是数组内部的数据,所以当我们添加数据时并没有立即响应在页面上。

非纯管道会在组件的变更检测周期中执行,而且会对对象的内部数据进行检测。

在我们的示例中将管道变更为非纯管道是非常贱简单的,只要在管道元数据中将添加pure标志为false即可。

代码如下所示:

这样每当我们添加新用户时,数据就会马上响应在页面上了。

在根模块声明的pipe在页面中引用有效,而在页面中引用的component中的模板则无效,这也是令我困惑的地方...

寻求了一些解决方案,大多是要注意得在根模块中声明,于是我做了个尝试,将组件也写成一个功能模块,并在组件功能模块中申明pipe,结果很欣喜,组件中的pipe生效了。

具体操作方法:

只需新建组件功能模块,并在改模块中申明pipe,myComponent.module.ts

大功告成,组件的模板引用pipe得以生效.

标签: angular的排序管道

本文链接地址:https://www.jiuchutong.com/biancheng/375882.html 转载请保留说明!

上一篇:vue组件watch属性实例讲解(vue watch form)

下一篇:vue组件生命周期详解(vue组件生命周期执行顺序)

  • 独资企业赚的钱全是老板的吗
  • 投资收益转入资本公积
  • 椅子坐垫有用吗
  • 小规模纳税人销售收入会计分录
  • 资产减值损失属于什么科目借方增加还是减少
  • 常见的会计凭证有哪些
  • 存在问题的具体表现和产生问题的原因分析
  • 其他公司向本企业借款
  • 发放工资比计提工资少了
  • 职工的保险费在哪里查
  • 企业所得税的减按征收如何计算
  • 网贷公司的印花税怎么交
  • 免税商品进项税可以抵扣吗
  • 餐饮发票税钱
  • 非正常损失对应的进项税额
  • 劳务派遣劳务费发票怎么开
  • 金税盘全额抵扣分录
  • 企业年检网上申报时间
  • 视同销售的企业所得税汇缴表怎么填列?
  • 房租付款和发票有关系吗
  • 企业自然人电子税务局怎么申报
  • 汇算清缴补缴税款分录小企业会计
  • 没收的定金 会计分录
  • 摊销房租费如何做账
  • linux中ls命令的意思
  • onekey.exe是什么
  • 电脑启用aero
  • 向银行贷款资金成本率计算公式是什么
  • 酒店损益类科目包括哪些
  • 外请培训老师的路费谁承担
  • php获取当前页面
  • 应收账款在贷方如何平账
  • 公司想减少注册资本流程
  • vue基础知识
  • vue3用法
  • 打开的ps关不掉
  • 增值税普通发票和专用发票有什么区别
  • 即征即退实际退税额35栏可以不填吗
  • dede织梦怎么转成zblog
  • 固定资产清理怎么报税呢
  • 织梦使用手册
  • mysql 小时差
  • mysql将查询结果存到另一个表
  • python导入模块的本质
  • 累计销售额怎么算
  • 汽车租赁费怎么赋码
  • sqlserver存储过程返回多个结果集
  • 置换补贴算在优惠价里吗
  • 补发工资如何计算个税
  • 缴纳税款滞纳金应计入哪个科目
  • 村集体经济组织的银行存款可以向外单位或个人出租出借
  • 分公司和总公司在一个地方
  • 怎么看懂自己的收入纳税
  • xp系统字体安装方法
  • winxp系统任务栏不见了
  • ubuntu20.04 unity
  • 苹果电脑安装了双系统怎么恢复苹果系统
  • 怎么把iphone作为u盘
  • win10应用商店是灰的
  • Mac应用程序的格式
  • win8怎么关电脑
  • win7系统的桌面图标怎么调出来
  • win7 64位旗舰版系统网页字体大小如何修改变动
  • win10安装驱动器
  • 文科生也能看懂的电子电路学PDf
  • python kmeans sklearn
  • windows、linux
  • android设计模式的应用场景
  • shell批处理脚本
  • js对象的constructor
  • js闭包详解
  • 什么叫党员双报到
  • 车辆购置税怎样交
  • 国家 税务 总局
  • 纽约消费税多少
  • 税务部门组织收入会议报道
  • 广州酒家月饼抽奖公告最新
  • 担保机构和银行的区别
  • 在国税局工作属于什么职业
  • 国税局和地税局分别征收什么税种
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设