Работа с pipes¶
Pipes
представляют специальные инструменты, которые позволяют форматировать отображаемые значения. Например, нам надо вывести определенную дату:
1 2 3 4 5 6 7 8 9 10 11 12 |
|
Здесь создается дата, которая дважды выводится в шаблоне. Во втором случае к дате применяется форматирование с помощью класса DatePipe
.
Встроенные pipes¶
В Angular 6 есть ряд встроенных pipes
. Основные из них:
CurrencyPipe
: форматирует валютуPercentPipe
: форматирует процентыUpperCasePipe
: переводит строку в верхний регистрLowerCasePipe
: переводит строку в нижний регистрDatePipe
: форматирует датуDecimalPipe
: задает формат числаSlicePipe
: обрезает строку
При применении классов суффикс Pipe
отбрасывается (за исключением DecimalPipe
— для его применения используется название number
):
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
|
Параметры в pipes¶
Pipes могут получать параметры. Например, пайп SlicePipe
, который обрезает строку, может получать в качестве параметра, начальный и конечный индексы подстроки, которую надо вырезать:
1 2 3 4 5 6 7 8 9 10 11 12 |
|
Все параметры в пайп передаются через двоеточие. В данном случае slice:6:11
вырезает подстроку, начиная с 6 до 11 индекса. При этом, если начала выреза строки обязательно передавать, то конечный индекс необязателен. В этом случае в качестве конечного индекса выступает конец строки.
Форматирование дат¶
DatePipe
в качестве параметра может принимать шаблон даты:
1 2 3 4 5 6 7 8 9 10 11 |
|
Форматирование чисел¶
DecimalPipe
в качестве параметра принимает формат числа в виде шаблона:
1 |
|
value
: само выводимое значениеdigitsInfo
: строка в формате "minIntegerDigits.minFractionDigits-maxFractionDigits", гдеminIntegerDigits
— минимальное количество цифр в целой частиminFractionDigits
— минимальное количество цифр в дробной частиmaxFractionDigits
— максимальное количество цифр в дробной части
locale
: код применяемой культуры
1 2 3 4 5 6 7 8 9 10 11 12 |
|
Форматирование валюты¶
CurrencyPipe
может принимать ряд параметров:
1 |
|
value
: выводимая суммаcurrencyCode
: код валюты согласно спецификации ISO 4217. Если не указан, то по умолчанию применяется USDdisplay
: указывает, как отображать символ валюты. Может принимать следующие значения:code
: отображает код валюты (например, USD)symbol
(значение по умолчанию): отображает символ валюты (например,$
)symbol-narrow
: некоторые страны используют в качестве символа валюты несколько символов, например, канадский доллар —CA$
, данный параметр позволяет получить собственно символ валюты —$
string
: отображает произвольную строку
digitsInfo
: формат числа, который применяется в DecimalPipelocale
: код используемой локали
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
|
Цепочки pipes¶
Вполне возможно, что мы захотим применить сразу несколько pipes
к одному значению, тогда мы можем составлять цепочки выражений, разделенные вертикальной чертой:
1 2 3 4 5 6 7 8 9 10 11 |
|