Что нужно знать о пайпах в Angular

Вот что вам нужно знать об использовании пайпов в вашем приложении Angular.

Что нужно знать о пайпах в Angular Picture 1

Что такое пайпы в Angular?

Pipes в Angular — это инструменты преобразования данных, которые делают приложения более динамичными. Они принимают значение в качестве входных данных и возвращают преобразованное значение в качестве выходных данных. Преобразования данных могут быть такими же простыми, как форматирование дат или валют, или такими же сложными, как фильтрация или сортировка списка элементов.

Вы можете использовать каналы в компонентах и ​​шаблонах Angular. Использовать трубы легко, и вы можете связать их в цепочку для создания более сложных преобразований.

Angular предоставляет ряд каналов, включая DatePipe, UpperCasePipe, LowerCasePipe, CurrencyPipe, DecimalPipe, PercentPipe, JsonPipe, SlicePipe и AsyncPipe. Он также обеспечивает создание пользовательских каналов.

Каждый встроенный канал Angular реализует уникальную функцию и может помочь вам преобразовать данные.

DataPipe

DataPipe форматирует и отображает переменные даты и месяца в формате, указанном в вашей локали. В отличие от других фреймворков, которым требуется пакет JavaScript для форматирования дат и месяцев, Angular использует DataPipe. Чтобы использовать DatePipe в своем приложении, добавьте символ вертикальной черты (|), за которым следует дата и любые другие дополнительные параметры.

Например:

Сегодняшняя дата {{ currentDate | дата }}

В этом примере вы передаете переменную currentDate в DataPipe, а затем форматируете ее в формат даты по умолчанию. Вы определяете переменную currentDate в файле TypeScript вашего компонента.

Например:

импортировать {Компонент} из ‘@angular/core’; @Component({селектор: ‘app-root’, templateUrl: ‘./app.component.html’, styleUrls: (‘./app.component.scss’) }) export class AppComponent { currentDate: any = new Date( ); }

Вы также можете передать дополнительные параметры в DataPipe, чтобы настроить результаты:

Сегодняшняя дата {{ currentDate | дата: ‘короткая дата’ }}

Приведенный выше блок кода передал параметр shortDate в DatePipe . Это говорит DatePipe отформатировать дату в коротком стиле. Помимо параметра shortDate, вы можете настроить DatePipe, используя различные параметры, включая z, longDate и пользовательские форматы даты, такие как дд/мм/гг.

UpperCasePipe и LowerCasePipe

UpperCasePipe и LowerCasePipe преобразуют ваш текст. Вы можете преобразовать текст в верхний регистр с помощью UpperCasePipe и в нижний регистр с помощью LowerCasePipe .

Чтобы использовать UpperCasePipe и LowerCasePipe , добавьте символ вертикальной черты (|), за которым следует нижний регистр для использования LowerCasePipe или верхний регистр для использования UperCasePipe .

Вот пример использования UpperCasePipe и LowerCasePipe:

{{ сообщение | верхний регистр}}

{{ сообщение | нижний регистр}}

ВалютаПайп

С помощью CurrencyPipe вы можете преобразовать числа в валюту приложения. CurrencyPipe форматирует числа в соответствии с вашим языком. Для форматирования чисел с помощью CurrencyPipe используйте символ вертикальной черты, за которым следует валюта.

Например:

{{ номер | валюта }}

В этом примере CurrencyPipe преобразует переменную в валюту. По умолчанию CurrencyPipe конвертирует переменные в доллары. Чтобы изменить это, вы можете настроить CurrencyPipe для конвертации в другую валюту, передав дополнительные параметры.

Например:

{{ номер | валюта: ‘GBP’ }}

Здесь вы передаете параметр GBP в CurrencyPipe. Это обеспечивает преобразование числовой переменной в валюту британского фунта стерлингов.

DecimalPipe и PercentPipe

DecimalPipe преобразует числа в десятичные дроби, а PercentPipe преобразует числа в проценты.

Чтобы использовать DecimalPipe , используйте символ вертикальной черты, за которым следует число и дополнительные параметры. Чтобы использовать PercentPipe , сделайте то же самое, но замените число процентами и без дополнительных параметров.

Например:

{{ номер | номер: ‘1.2-3’ }}

{{ номер | процент }}

Дополнительный параметр передается в DecimalPipe, который управляет отображаемыми целыми числами и дробями. Параметр 1 указывает, что должна быть хотя бы одна целая цифра. Для сравнения, в параметре 2.3 указано, что дробных цифр должно быть не менее 2-х и не более 3-х.

JsonPipe

JsonPipe — это встроенный канал, который преобразует данные в строковый формат JSON. Он в основном используется для целей отладки. Вы можете использовать JsonPipe как для объектов, так и для массивов.

Синтаксис:

{{ выражение | json }}

Здесь выражение — это данные, которые вы хотите преобразовать в формат JSON. Оператор канала ( | ) применяет JsonPipe к этому выражению.

Например, определите объект и массив в вашем компоненте:

импортировать {Компонент} из “@angular/core”; @Component({ селектор: “app-root”, templateUrl: “./app.component.html”, styleUrls: (“./app.component.scss”), }) export class AppComponent { user: data = { firstname : “Джон”, фамилия: “Доу”, }; profiles: data() = ( { имя: “Джон”, фамилия: “Доу”, }, { имя: “Питер”, фамилия: “Паркер”, }, ); } данные интерфейса { имя: строка; фамилия: строка; }

Приведенный выше блок кода определяет объект пользователя и массив профилей. Теперь вы можете использовать JsonPipe для преобразования объектов и массивов в JSON.

{{ пользователь | json}}

{{ профили | json}}

Здесь JsonPipe преобразует пользовательский объект и массив профилей в строку JSON, которую можно быстро просмотреть в шаблоне во время разработки или отладки.

SlicePipe

SlicePipe похож на метод slice() в JavaScript. SlicePipe форматирует массивы или строки, извлекая элементы для создания новых массивов или строк.

Чтобы использовать SlicePipe, вы используете значок трубы, затем срез и два параметра, начальный и конечный индексы. Начальный индекс — это позиция в массиве или строке, где канал начинает доступ к элементам, а конечный индекс — это место, где канал будет использовать для доступа к элементам.

Пример использования SlicePipe:

{{ строка | срез: 0:2}}

{{массив | срез: 0:1}}

В этом примере SlicePipe извлечет первые два элемента из строковой переменной, элемент с индексом 0 и элемент с индексом 1. Кроме того, он извлечет первый элемент из переменной массива. SlicePipe полезен, когда вы хотите показать только часть данных в шаблоне.

Асинкпайп

AsyncPipe — это интегрированный канал Angular, который автоматически подписывается и отменяет подписку на Observale или Promise. Он возвращает последнее значение, сгенерированное Observable или Promise.

Синтаксис использования AsyncPipe следующий:

{{ выражение | асинхронный }}

Здесь выражение — это Observable или Promise, на которое вы хотите подписаться. Например:

пусть числа = из (1, 2, 3, 4, 5);

Вы можете использовать AsyncPipe, чтобы подписаться на Observable и показать последнее воспроизведенное значение следующим образом:

{{ числа | асинхронный }}

Этот блок кода выведет последнее число из Observable. AsyncPipe очень полезен при работе с асинхронными операциями в шаблонах. Он автоматически подписывается на Observable или Promise при инициализации компонента и отписывается при его уничтожении.

Резьбовые трубы в Angular

Вы можете связать конвейеры вместе, чтобы реализовать несколько преобразований в выражении. Цепочка каналов так же проста, как использование нескольких операторов каналов (|) в выражении. Выход каждой трубы становится входом для следующей трубы.

Основной синтаксис:

{{ выражение | труба1 | труба2 | . }}

Например, вы можете преобразовать объект даты в строку с помощью DatePipe, а затем преобразовать эту строку в верхний регистр с помощью UpperCasePipe.

Сегодняшняя дата {{ currentDate | дата: ‘короткая дата’ | верхний регистр }}

Pipes — это мощная функция в Angular, которая позволяет вам изменять данные до того, как они появятся в окне просмотра. Надеюсь, из этой статьи вы узнали, как эффективно использовать Pipe в Angular.

Похожие записи

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *