位置: 编程技术 - 正文

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组件生命周期执行顺序)

  • 待抵扣进项税额和待认证进项税额的区别
  • 税务登记证号是纳税人识别号吗?
  • 商品流通企业都交什么税
  • 转租价格由谁决定
  • 外经证办好了后怎么开票
  • 速达建账套期初数据
  • 小规模纳税人普票和专票怎么交税
  • 预估应付账款该怎么冲销
  • 融资租赁租入固定资产折旧可以税前扣除吗
  • 隔月的发票冲红了税怎么办
  • 一个工程项目多次收款怎样预交增值税
  • 办理异地租房提取公积金流程
  • 教育费附加抵免政策
  • 建筑企业如何申请高新技术企业
  • 个体工商户营业执照年检
  • 公司一直零报税,有问题吗
  • 一般纳税人和小微企业的区别
  • 增值是什么意思解释
  • 税法相关问题
  • 工程结算在资产负债表的哪个科目
  • 事业收入和经营收入的联系
  • 材料按实际成本计价核算
  • 支付知识产权服务费账务处理
  • 年终一次性奖金个税计算
  • 获得administer权限
  • 没有权限使用网络资源,请与这台服务器的管理员联系
  • 股东借钱给公司怎么写借条
  • 如何手机个人热点连电脑
  • 台式电脑组装过程视频
  • 图像类别
  • 什么是会计分录其一般表达形式是怎样的
  • 应交消费税影响当期损益吗
  • 网络通信的整个流程
  • web无法运行
  • 怎样创建一个网站
  • 设置php扩展路径
  • vue.js如何安装
  • mysql的排序规则
  • php中的强制类型转换函数有哪些?
  • 电池成本什么时候能降低
  • 公司年底封账时间
  • 营改增之后还有营业税金及附加吗
  • 可供出售金融资产属于什么科目
  • 计入固定资产和费用的区别
  • 一般纳税人跨年冲红报年度所得税怎么做
  • 未分配利润为负数可以分红吗
  • 招待费和差旅费的区别
  • 如何申请增值税留抵退税
  • 低值易耗品和物料用品的区别
  • 交存超库存现金
  • 企业购入投资性房地产
  • 公司按揭贷款
  • 给公司股东分红的账务处理
  • 当月开通的业务当月能取消吗
  • 劳务成本如何核算
  • 现金日记账月末怎么结账图片
  • sqlserver 修改列类型
  • windows mysql5.5升级5.7
  • win7旗舰版系统怎么样
  • XP系统如何设置变流畅
  • linux监视内存详细信息命令
  • xp桌面右键选项消失
  • 苹果系统如何访问u盘
  • u盘 macbook
  • xp系统禁止程序联网
  • 怎样修改linux用户名和密码
  • Win10系统怎么打开IE浏览器
  • cocos资源释放
  • python accdb
  • [置顶]从lv2开始开挂的原勇者候悠闲的异世界生活
  • node.js中的http.response.end方法使用说明
  • putty自动登录脚本
  • jquery validate表单校验长度
  • 下载随手笔记
  • python saga
  • 工会经费申报表在哪里查询
  • 北京纳税申报的具体流程
  • 江苏省常熟市归哪管
  • 处理报废固定资产
  • 税务总局四个确保
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设