<\/P>
Možná jste o nich slyšeli, ale nebyli jste si úplně jisti, co to jsou. Nepochybně jste je celou dobu používali ve svém vývoji ArcGIS API for JavaScript a ani jste o tom nevěděli. Možná jsou pro vás noční můrou a přidávají vám šediny. Milujte je nebo nenáviďte, ale naučte se je používat.<\/EM> Promises,<\/STRONG> plynou jako praskliny ve zdi<\/EM>.<\/P><\/P>Můžete si přečíst více o EcmaScript 2015 Promises zde<\/A>. Tady je specifikace<\/A>, pokud máte chuť si ji přečíst. Když říkám, že jste s nimi pravděpodobně pracovali celou dobu a ani jste o tom nevěděli, podívejme se na návod Jak získat data ze serveru<\/A> v dokumentaci ArcGIS JS API. Podívejte se na všechny odkazy na věci jako doSomthing().then(function(){})<\/SPAN>. To je Promise<\/EM>. Promises používané v JS API jsou založené na Dojo Promise<\/A>, který existuje déle než většina implementací Promise. Proto nemá všechny<\/EM> metody definované výše. Ale funguje stejně dobře. Tento modul Promise je jen API pro Promise. V ArcGIS API for JavaScript obvykle pracujeme s Promises přes dojo\/Deferred<\/A>. Někteří by řekli, že příspěvek od Sitepen pro více podrobností.<\/P><\/P>Prozatím hotovo, slibuji<\/H2>Jak vidíte, Promises a jejich implementace v Deferred jsou docela silné. Jsou to skvělé nástroje pro práci s asynchronními úkoly. Jedna věc, na kterou je třeba pamatovat, je, že Promises se spustí okamžitě. Vy jen odložíte, kdy se výsledky zpracují. Pokud chcete vyzkoušet jiné techniky, které odloží spuštění, dokud nebudete připraveni, můžete vyzkoušet RxJS nebo se podívat na něco jako Folktales data.task, což implementuje Future monad. Ale tyto dobroty nechám na vás, abyste je prozkoumali.<\/P><\/P>Pro více tipů a triků geodev navštivte můj blog<\/STRONG>.<\/P><\/BODY><\/HTML>
Přihlášení členové mohou přispívat, sledovat aktualizace a další. Nový zde? Zaregistrujte si bezplatný účet.
Find useful guides, FAQs, and documents to help you navigate and make the most of Esri Community.