Patrzyłem na różne asynchroniczne programy ładujące zasoby i nie jestem jeszcze pewien, którego użyć. Tam, gdzie pracuję, mamy różne wysiłki grupowe, których moduły klasowe mogą używać różnych wersji jQuery (itp.). W związku z tym zagnieżdżone zależności również mogą się różnić. Nie mam nad tym kontroli, więc oznacza to, że muszę dynamicznie ładować zasoby, które mogą wykorzystywać alternatywne wersje tej samej biblioteki.
Jako takie, oto moje wymagania:
- Załaduj pliki zasobów JavaScript i CSS asynchronicznie.
- Zarządzaj kolejnością zależności i zagnieżdżonymi zależnościami między wersjami.
- Wykryj, czy zasób jest już załadowany.
- Musi zezwalać na ładowanie między domenami (CDN)
- (opcjonalnie) Pozwól nam rozładować zasób.
Patrzyłem na:
Mogę być w stanie sam sfałszować te wymagania, ładując wersje do zmiennych o odpowiednich nazwach i używając tablicy do śledzenia tego, co jest już załadowane ... ale (mam nadzieję) ktoś już to wymyślił.
Więc moje pytania to:
- Z których korzystasz? I dlaczego?
- Czy są inne, które w pełni spełniają moje wymagania?
- Która z nich jest najbardziej wymowna i najłatwiejsza w obsłudze? I dlaczego?
AKTUALIZACJA:
Dla zainteresowanych wypróbowałem wszystkie biblioteki AMD powyżej (i więcej). W końcu poszedłem z RequireJS . Ogólnie jest po prostu czystszy i łatwiejszy ... i cieszę się, że go używam.