![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 415 Pomógł: 0 Dołączył: 24.12.2008 Ostrzeżenie: (10%) ![]() ![]() |
Mam pytanie - mam kilka podstron, niestety używam bibliotek javascript, które się ze sobą "gryzą" - dlatego muszę każdą ładować na innych stronach, ale przy przechodzeniu między podstronami nie działa to dobrze - jest jakiś sposób, żeby przy ładowaniu danych bibliotek - czyścić wszystkie wcześniej załadowane, żeby "wyczyścić" sobie plac budowy przed załadowaniem kolejnych bibliotek?
|
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 66 Pomógł: 11 Dołączył: 25.07.2012 Ostrzeżenie: (0%) ![]() ![]() |
Temat nie należy do prostych. Dobrym rozwiązaniem jest zbudowanie autoloadera js, który mógłby dynamicznie wczytywać dane pliki, kóre byłby aktualnie potrzebne. Jednak to wymaga odpowiedniego nazewnictwa samych plików - oraz obiektów w nich używanych. Wtedy możesz sobie wyodrębnić te obiekty (bo funkcje też są obiektami w js), które używsz niemal w całej aplikacji + loader, a resztę specyficznych obiektów i ich metod lub grup ładować do poszczególnych plików. Wtedy łatwiej zapanować nad dołączaniem kolejnych plików.
Np.: common.js - ładowany na każdą stronę, stronaA - ładowany stronaA.js i jeśli w tym pliku odwołujesz się do jakiś obiektów (które będą wykorzystywane na innej podstronie także), to loader mógłby dynamicznie wczytać taki plik jak objektB.js. Jest to zagadnienie ciekawe, ale trzeba się orientować jak działa js i co z czego wynika. Czyli przede wszystkim trzeba zachować odpowiednie przestrzenie nazw, a nie używać globalnych zmienych. (to jest właśnie odpowiedź na Twoje pytanie - bo trochę się zapędziłem i zgubiłem wątek) Wtedy mamy pewność, że czegoś sobie nie nadpiszemy i nie doprowadzimy do nie przewidzianych sytuacji. Każdy kij ma dwa końce, niby wszystko ładnie działa, ale przy złożonym projekcie może okazać się, że ładujemy dość dużą ilość plików i wtedy należało by oszacować, co z czym można połączyć by to zoptymalizować ![]() |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 25.06.2025 - 02:34 |