Ve výchozím nastavení je požadavek $ .ajax v jQuery nastaven na asynchronní. Název proměnné je asynchronní a hodnota je nastavena na true. To mi také trochu zmatilo, když jsem se o tom poprvé dozvěděl, tak jdeme na to.
Asynchronní vs. synchronní
Výchozí nastavení v jQuery. Podle mých zkušeností by Asynchronous měl téměř vždy dělat ten trik. Zejména existují 2 situace, které neumožňují synchronní hovor.
- Požadavky napříč doménami. Pokud dělám požadavek ajax z techjunkie.com do souboru naeverever.com (zcela jiná doména), bude to požadavek na více domén.
- jsonp - Pokud chcete načíst datová doména JSON, hledáte JSONP.
Kdy použít synchronní
Nejprve byste si měli být vědomi, že nastavení asynchronní na false zamrzne váš prohlížeč. Úplně to zamkne. Nejen vaše stránka, ale každá stránka, kterou může mít uživatel otevřený. Pokud například váš server zpomalí požadavek na polovinu, efektivně jste deaktivovali jeho prohlížeč, dokud váš server nemá šanci zachytit a předat potřebná data.
Místo toho, aby riskoval synchronní hovor, stačí zadat funkci zpětného volání při úspěchu nebo chybě. Dostanete se ke stejnému cílovému bodu, aniž byste zničení uživatelského prohlížení. Stručně řečeno, nepoužívejte synchronní hovor. Je to špatné pro vaši aplikaci a UX.
