首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在角,如何使用管道的角度模板,而不使用导入?

在角,如何使用管道的角度模板,而不使用导入?
EN

Stack Overflow用户
提问于 2019-02-26 00:42:12
回答 1查看 2.1K关注 0票数 2

当使用管道中内置的角(例如日期)或如果使用custom管道时,我们需要导入组件中的语句。例如。

代码语言:javascript
运行
复制
import { DatePipe } from '@angular/common';

但是在模板中,我们可以直接使用它,而不必“导入”‘组件’中的任何内容。为什么?

我猜角编译器在将模板转换为"javascript“时最终会添加导入语句,是这样吗?为什么我们不能对组件做同样的事情呢?

纯粹出于好奇

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-02-26 01:02:03

管道就像部件一样,是角度的陈述性特征。

当您声明管道时,它将作为声明添加到模块中。

代码语言:javascript
运行
复制
@Pipe({name:'myPipe'})
export class MyPipe implements PipeTransform {
   ...
}

@NgModule({
   declarations: [MyPipe]
})
export class PipesModule {}

字符串值"myPipe“的作用非常类似于组件的选择器。

提前角编译器将解析所有模块并读取所有声明.它将选择器和管道名称收集在一起。

声明提供了创建组件和管道实例所需的工厂函数。

当角编译找到表达式attribute="num | number"时,它知道由于|字符,"number“指的是管道。它将搜索工厂函数的已知声明列表。

角从不使用导入语句来获得对管道或组件的访问。当编译器解析模块时,它已经找到了它们。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54876897

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档