



























Angular 中的管道其实就是angularjs或vue中的过滤器,用来转换数据然后显示给用户。 本质上就是一个纯函数。
要创建一个管道,必须实现 PipeTransform 接口。这个接口非常简单,只需要实现transform方法即可。 使用管道的几个注意事项:
{{date | date: 'fullDate' | uppercase}}使用 impure 管道时候要小心,很可能触发非常频繁。
filteredHeroes 或 sortedHeroes 属性Angular提供了json和async管道,我们来分析下源码
/node_modules/@angular/common/esm5/src/pipes/json_pipe.js非常简单,就一行话。
JsonPipe.prototype.transform = function (value) {
return JSON.stringify(value, null, 2);
};这个是Angular特有的管道,可以多使用 其实会处理两种对象类型,Observable或Promise,简单说如果是Observable会执行subscription方法,如果是Promise会调用then方法。如果是Observable当组件销毁时执行unsubscribe方法取消订阅。 node_modules/@angular/common/esm5/src/pipes/async_pipe.js:11
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。