angular中管道是有区别的:
纯管道和非纯管道是相对于管道所传的参数而言的。如果管道是纯管道,只监听基本类型的参数的变化或者引用类型引用的变化;然而, 对于非纯管道,不管是基本类型参数的改变还是引用类型内部数据变化(而非引用变化)都可以触发管道。
@Pipe({
name: 'filterState',
pure: true **default**(纯管道:监听基本类型的参数的变化或者引用类型引用的变化)
})
// 对默认创建的管道文件,起数据转换作用,满足日常的单位时间自定义格式的一些简单转换。
(有局限性)达不到对一个复杂的对象数据变换引起状态需要转换的效果,此时 '非纯管道' 就能满足其缺点,
// ------ //
@Pipe({
name: 'filterState',
pure: false //(非纯管道:监听所有情况的变化)
})
// 将pure:false 管道转换成非纯管道,对于引用类型的转换也能实时起作用,(一般就是对‘对象数据’可能会改变而按需要再次转换时使用)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)