Ответ
Pipes в Angular — это инструменты для трансформации данных прямо в шаблоне. Они позволяют форматировать значения (даты, строки, числа и т.д.) без изменения исходных данных.
Пример использования:
<p>{{ today | date:'fullDate' }}</p>
<p>{{ price | currency:'EUR' }}</p>
<p>{{ text | uppercase }}</p>
Типы Pipes:
- Встроенные (
date
,currency
,uppercase
и др.) - Кастомные (создаются разработчиком через
@Pipe
)
Чистые (pure) и нечистые (impure) pipes
Чистые обновляются только при изменении входного значения или ссылки (для объектов). Нечистые — при каждом изменении детекта (могут снижать производительность).
Создание кастомного Pipe:
@Pipe({ name: 'reverse' })
export class ReversePipe implements PipeTransform {
transform(value: string): string {
return value.split('').reverse().join('');
}
}