Іноді вбудовані фільтри в Angular не можуть задовольнити потреби чи вимоги щодо фільтрування вихідних даних. У такому випадку може бути створений спеціальний фільтр, який може передавати вихідні дані необхідним чином.
Як створити власний фільтр
У наведеному нижче прикладі ми збираємося передати рядок до подання від контролера через об'єкт обсягу, але ми не хочемо, щоб рядок відображався таким, яким він є.
Ми хочемо забезпечити, щоб кожного разу, коли ми відображаємо рядок, ми передавали спеціальний фільтр, який додаватиме інший рядок і відображатиме завершений рядок користувачеві.
Event Registration Guru99 Global Event
This tutorial is {{tutorial | Demofilter}}
Пояснення коду:
- Тут ми передаємо рядок "Angular" у змінну-член, яка називається tutorial, і приєднуємо її до об'єкта scope.
- Angular надає послугу фільтрування, яка може бути використана для створення нашого власного фільтра. "Демофільтр" - це ім'я, дане нашому фільтру.
- Це стандартний спосіб, яким визначається спеціальний фільтр, при якому повертається функція. Ця функція містить власний код для створення власного фільтра. У нашій функції ми беремо рядок "Angular", який передається з нашого подання фільтру та додає до нього рядок "Tutorial".
- Ми використовуємо наш Demofilter для нашої змінної-члена, яка була передана від контролера до подання.
Якщо код виконано успішно, під час запуску коду в браузері буде показано наступний результат.
Вихід:
З виходу,
- Видно, що наш спеціальний фільтр застосовано і
- Слово "Підручник" було додано в кінці рядка, який було передано у підручнику змінної члена.
Короткий зміст:
Якщо є вимога, якій не відповідає жоден із фільтрів, визначених у angular, тоді ви можете створити власний фільтр і додати власний код, щоб визначити тип вихідних даних, які ви хочете отримати з фільтра. A