Angular має багато вбудованих труб, таких як дата, асинхрон, валюта тощо. Хоча він готовий до використання, він далеко не задовольняє деякі бізнес-потреби, тому необхідно впроваджувати індивідуальні труби.
Найпростіша кастомна труба — отримати одне значення, а потім повернути інше. Форма аргументу не є обмеженою, вона може бути будь-якого типу, наприклад рядок, число, об'єкт тощо.
Форматування конвеєра за стандартною датою не задовольнить наші потреби.
Результат JSON, який повертається інтерфейсом:
{"statusDate":"0001-01-01T00:00:00" ...} Це пов'язано з тим, що ми серіалізуємо об'єкти в .NET Core і прикріплюємо значення за замовчуванням до поля типу datetime, яке є DateTime.MinValue.
Ми використовуємо
буде показано
нашВимога полягає в тому, що якщо повертається поле типу datetime, якщо воно порожнє, наприклад "0001-01-01T00:00:00", воно має повернути NA。
Створимо новий конвеєр через команду angular-cli, команда виглядає так:
Код виглядає так:
Після завершення нового створення файл app.module.ts автоматично додасть наступний код:
Ми повертаємося до використання нового конвеєра на HTML-сторінці, у наступному вигляді:
повернеться, і результат, який ми хочемо, як показано на зображенні нижче:
Примітка: передача параметрів до pip використовує : розщеплення.
|