Követelmények: Az Angular projektek, amikor egy oldalon egy gombra kattintanak, HTTP kérést küldenek, mert egyes interfészek időigényesek, és a betöltési animációs hatást kell megjeleníteniük, amikor a HTTP kérés befejeződik, a betöltési animáció lezárul.Ha a kérés sikeres vagy hiba jelentkezik, ki kell kapcsolnod a betöltési animációt。
Hagyományos írás
Következőképpen:
Vagyis, amikor a kérés sikeres és hiba történik, akkor hívnod kell a záróbetöltési animációt, van-e egyszerűbb módja? Hasonló a C#-ban a próbálkozás-elkapás-végre.
Használd a véglegesítő operátort
Amit csinál, az a próba-elkapás-döntővégülfunkció esetén csak egyszer kell megírnunk a kódot, és a logikát végrehajtják, függetlenül a sikertől vagy kudarctól.
A kódex a következő:
Hogyan működik a véglegesítés? Gyakorlatilag egy callback add(fn) hozzáad egy megfigyelhető objektum szétszereléséhez előfizetéssel. Ez garantálja, hogy hiba, befejezés és előfizetés leállása esetén behívják.
Fontos megjegyezni, hogy a véglegesítő operátor akkor kerül le, amikor megfigyelhető megszűnik. Ez fontos! Az Angular HTTP esetében ez nagyon jól működik, mert az Angular HTTP szolgáltatás a kérés befejezése után "kész" állapotot ad vissza.
(Vége) |