【Angular06】管道(类似vue的过滤器)、变更检测的工作原理

管道

管道能接受多个参数,就用冒号分隔这些值

  • 模板表达式 {{ amount | currency:'EUR' }} 会把 amount 转换成欧元

Angular 忽略了被改变的数组元素的原因是对数组的引用没有改变。由于 Angular 认为该数组仍是相同的,所以不会更新其显示

解决 (在复合对象内部进行更改后执行自定义管道):

把 pure 标志设置为 false 来把管道设置成非纯的

  • @Pipe({
      name: 'flyingHeroesImpure',
      pure: false
    })

 

变更检测的工作原理

 

通过 setter 截听输入属性值的变化

 

posted @ 2020-09-17 15:28  耶梦加德  阅读(208)  评论(0编辑  收藏  举报