Kartais „Angular“ įmontuoti filtrai negali patenkinti išvesties filtravimo poreikių ar reikalavimų. Tokiu atveju galima sukurti pasirinktinį filtrą, kuris gali perduoti išvestį reikiamu būdu.
Kaip sukurti pasirinktinį filtrą
Žemiau pateiktame pavyzdyje mes perduosime eilutę valdiklio vaizdui per srities objektą, tačiau nenorime, kad eilutė būtų rodoma tokia, kokia yra.
Mes norime užtikrinti, kad kiekvieną kartą, kai rodysime eilutę, mes perduosime pasirinktinį filtrą, kuris pridės kitą eilutę ir parodys užbaigtą eilutę vartotojui.
Event Registration Guru99 Global Event
This tutorial is {{tutorial | Demofilter}}
Kodo paaiškinimas:
- Čia mes perduodame eilutę „Kampinis“ nario kintamajame, vadinamame „tutorial“, ir pridedame ją prie srities objekto.
- „Angular“ teikia filtro paslaugą, kurią galima naudoti kuriant mūsų pasirinktinį filtrą. „Demofilter“ yra mūsų filtrui suteiktas pavadinimas.
- Tai yra įprastas būdas apibrėžti pasirinktinį filtrą, kuriame grąžinama funkcija. Šioje funkcijoje yra pasirinktinis kodas, skirtas sukurti pasirinktinį filtrą. Vykdydami savo funkciją, mes paimame eilutę "Kampinis", kuri iš mūsų rodinio perduodama filtrui, ir prie to pridedame eilutę "Pamoka".
- Mes naudojame savo „Demofilter“ mūsų narių kintamajame, kuris buvo perkeltas iš valdiklio į rodinį.
Jei kodas sėkmingai įvykdytas, paleidus kodą naršyklėje bus rodoma ši išvestis.
Išvestis:
Iš išvesties
- Galima pastebėti, kad pritaikytas mūsų pritaikytas filtras ir
- Eilutės pabaigoje buvo pridėtas žodis „Pamoka“, kuris buvo perduotas kintamojo nario pamokoje.
Santrauka:
Jei yra reikalavimas, kurio neatitinka nė vienas kampu apibrėžtas filtras, galite sukurti pasirinktinį filtrą ir pridėti savo kodą, kad nustatytumėte norimo iš filtro išvesties tipą.