Понякога вградените филтри в Angular не могат да отговорят на нуждите или изискванията за филтриране на изхода. В такъв случай може да се създаде персонализиран филтър, който може да предаде изхода по необходимия начин.
Как да създадете персонализиран филтър
В примера по-долу ще предадем низ на изгледа от контролера чрез обекта на обхвата, но не искаме низът да се показва такъв, какъвто е.
Искаме да гарантираме, че когато показваме низа, предаваме персонализиран филтър, който ще добави друг низ и ще покаже завършения низ на потребителя.
Event Registration Guru99 Global Event
This tutorial is {{tutorial | Demofilter}}
Обяснение на кода:
- Тук предаваме низ "Angular" в променлива член, наречена tutorial, и я прикачваме към обекта на обхвата.
- Angular предоставя услугата за филтриране, която може да се използва за създаване на наш персонализиран филтър. „Демофилтърът“ е име, дадено на нашия филтър.
- Това е стандартният начин, по който се дефинира персонализиран филтър, при който се връща функция. Тази функция съдържа персонализирания код за създаване на персонализиран филтър. В нашата функция ние приемаме низ "Angular", който се предава от нашия изглед към филтъра и добавя низа "Tutorial" към това.
- Използваме нашия Demofilter за нашата променлива на член, която е предадена от контролера на изгледа.
Ако кодът се изпълни успешно, след стартиране на вашия код в браузъра ще се покаже следният изход.
Изход:
От изхода,
- Вижда се, че нашият персонализиран филтър е приложен и
- Думата "Урок" е добавена в края на низа, който е предаден в учебната променлива на члена.
Резюме:
Ако има изискване, което не е изпълнено от нито един от филтрите, дефинирани в angular, тогава можете да създадете персонализиран филтър и да добавите персонализиран код, за да определите вида на изхода, който искате от филтъра.