Tyle tytułem wstępu i teorii, a teraz jak skorzystać z bezpłatnej biblioteki Require.js:
Najpierw należy pobrać plik z RequireJS do katalogu ze swoim projektem. Można to również zrobić wykorzystując npm:
npm install requirejs
Następnie należy go podpiąć do pliku index.html:
index.html
<html>
<head>
<script data-main="main" src="require.js"></script>
</head>
<body>
<h1></h1>
</body>
</html>
zapis: data-main=”main” oznacza, że w pliku main.js (rozszerzenie js jest domyślne dlatego nie musi być wpisane) pojawi się deklaracja modułów dla RequireJS.
main.js
requirejs.config({
paths: {
'jquery': 'https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min'
}
});
require(['jquery'], function ($) {
require(["one", "two", "three"], function (one, two, three) {
$('h1').html(three - one + two);
});
});
Na początku pliku main.js w requirejs.config deklaracja ścieżki do jQuery. Następnie deklaracja użycia jQuery i w jego wnętrzu wczytanie kolejnych modułów: one.js, two.js, three.js, dzięki czemu będą one mogły wykorzystywać tę bibliotekę. Następnie dzięki jQuery wyszukanie znacznika H1 i wyświetlenie w nim wyniku działania na trzech modułach: three – one + two;
one.js
define('one', [], function(){
var someone = 1;
return someone;
});
two.js
define('two', [], function(){
var two = 2;
return two;
});
Moduły one i two, są bardzo proste. Zadeklarowana oraz zwrócony jest w nich zmienna dzięki czemu te wartości trafią do main.js. Pierwsze dwa pliki pokazują w jaki sposób przekazywać moduły: define, a w nim nazwa, tablica oraz funkcja anonimowa.
three.js
define('three', ['four'], function(four){
var three = 3 + four.fifty + four.forty;
return three;
});
four.js
define('four', [], function(){
return {
forty: 40,
fifty: 50
};
});
Ciekawiej wyglądają dwa kolejne moduły: three i four. W three najpierw pobrany został kolejny o nazwie four. Jego nazwę wstawiona została w tablicę oraz jako parametr w funkcji anonimowej. Z kolei w module four zwrócony został obiekt, do którego przy takim zapisie dostęp ma jedynie plik three.js .