# 了解管道

使用管道来转换字符串、货币金额、日期和其他数据以进行显示。

# 什么是管道

管道是在模板表达式中使用的简单函数,用于接受输入值并返回转换后的值。管道很有用,因为你可以在整个应用程序中使用它们,同时每个管道只声明一次。例如,你可以用管道将日期显示为**1988 年 4 月 15 日,**而不是原始字符串格式。

TIP

对于本主题中使用的示例应用程序,请参阅现场演练/ 下载范例 .

# 内置管道

Angular 为典型的数据转换提供了内置的管道,包括国际化的转换(i18n),它使用本地化信息来格式化数据。数据格式化常用的内置管道如下:

  • DatePipe :根据本地环境中的规则格式化日期值。

  • UpperCasePipe :把文本全部转换成大写。

  • LowerCasePipe :把文本全部转换成小写。

  • CurrencyPipe :把数字转换成货币字符串,根据本地环境中的规则进行格式化。

  • DecimalPipe :把数字转换成带小数点的字符串,根据本地环境中的规则进行格式化。

  • PercentPipe :把数字转换成百分比字符串,根据本地环境中的规则进行格式化。

TIP

  • 关于内置管道的完整列表,请参阅管道 API 文档。

  • 要了解有关使用管道进行国际化 (i18n) 工作的更多信息,请参阅根据区域设置格式化数据。

你还可以创建管道来封装自定义转换,并在模板表达式中使用自定义管道。

# 管道的优先级

管道操作符要比三目运算符(?:)的优先级高,这意味着 a ? b : c | x会被解析成 a ? b : (c | x)

由于这种优先级设定,如果你要用管道处理三目元算符的结果,就要把整个表达式包裹在括号中,比如 (a ? b : c) | x

src/app/precedence.component.html

<!-- use parentheses in the third operand so the pipe applies to the whole expression -->
{{ (true ? 'true' : 'false') | uppercase }}
Last Updated: 5/16/2023, 7:35:10 PM