Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: requirejs - jak inny js na każdej ze stron
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
d4ng
Cześc w internecie widziałem masę exampli ale tylko na jednej stronie - index.html....

w części head:
  1. <script data-main="assets/js/main.js" src="assets/js/require.js"></script>


układ:
  1. /assets
  2. /js
  3. /lib
  4. - jquery.min.js
  5. - semantic.min.js
  6. - autocomplete.min.js
  7. /module
  8. search.js
  9. - require.js
  10. - main.js



zawartość main (konfiguracja, to co ładuje się zawsze):
[JAVASCRIPT] pobierz, plaintext
  1. requirejs.config({
  2. baseUrl: 'assets/js/lib/',
  3. paths: {
  4. app: '../module'
  5. }
  6. });
  7.  
  8. requirejs(['jquery.min', 'semantic.min'], function ($, semantic) {});
[JAVASCRIPT] pobierz, plaintext



zawartość search.js
[JAVASCRIPT] pobierz, plaintext
  1. define(['autocomplete'], function(autocomplete){
  2. return alert('modul z wykorzystaniem biblioteki autocomploeteg');
  3. });
[JAVASCRIPT] pobierz, plaintext



Moim celem jest to że np. na stronie "wyszukiwarka.html" załaduje sie jquery i semantic + autocomplete.min.js wraz z uruchomionym search.js
viking
Tylko po co? Minimalizujesz całość, przegladarka czyta wszystko raz i leci z cache. Polecam moduły es6 oraz babel. Sam się już dawno przerzucilem z require i są tylko same plusy.
d4ng
po to aby zastosować t3js i inicjalizować js'y tylko wtedy gdy na stronie pojawi się div z atrybutem data-module (http://t3js.org/docs/getting-started/module). zamysł jest taki że moduły to rodzaj komponentów i cała architektura bedzie dosyć rozbudowana. Nie che spłaszczać kodu który na danej stronie w ogóle nie będzie uzywany.. bezsensowna utrata zasobów.
viking
Przykład masz w dokumentacji https://github.com/requirejs/example-multipage
Kolejny fw który wiąże akcje przez dom. Osobiście mnie odrzuca to podejście. Trzeba mocno uważać przy pisaniu.
Comandeer
Cytat
Kolejny fw który wiąże akcje przez dom

Już nie przeginajmy z tym demonizowaniem DOM-u. 14 warstw abstrakcji poza nim jest równie niestrawne wink.gif

Jeśli serwer wie jaki JS jest potrzebny na jakiej stronie, może słać specjalnie spreparowane paczki dla danej podstrony. Wówczas odpada cały problem z asynchronicznym doczytywaniem zależności + mamy dokładnie to, czego potrzebujemy → win–win.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.