Dzisiejszy wpis poświęcony jest świetnemu frameworkowi JavaScript: AngularJS
Zgodnie z tym co możemy przeczytać w Wikipedii:
„AngularJS – otwarty framework oparty na języku JavaScript, wspierany i firmowany przez Google, wspomagający tworzenie i rozwój aplikacji internetowych na pojedynczej stronie. Zadaniem biblioteki jest wdrożenie wzorca Model-View-Controller (MVC) do aplikacji internetowych, aby ułatwić ich rozwój i testowanie.
Biblioteka wczytuje plik HTML zawierający dodatkowe specyficzne dla tej biblioteki tagi. Podążając za instrukcjami wydawanymi przez owe znaczniki, biblioteka przypisuje wejściowe i wyjściowe elementy strony do modelu, zapisanego jako zestaw zmiennych języka JavaScript. Wartości tych zmiennych można ustawić ręcznie lub pobrać z otrzymywanego statycznie lub dynamicznie źródła JSON-a.”
Źródło: https://pl.wikipedia.org/wiki/AngularJS
Poniżej podstawy które należy znać przed rozpoczęciem korzystania z AngularJS:
Two-way data binding
Dodanie dyrektywy ng-app do tagu w kodzie html spowoduje, że kompilator AngularJS skompiluje wszystko wewnątrz tego tagu. Zazwyczaj się stawia tę dyrektywę przy samym tagu <html> oczywiście nie jest to wymóg. Dyrektywa ng-model=”twojeImie” powoduje przypisanie wartości tego inputu do modelu. Poniżej {{twojeImie}} wyświetla zawartość. I to tyle! Wartość jest zbindowana w dwie strony. Do poniższego przykładu nie trzeba pisać nawet linijki kodu JavaScript!
<div ng-app>
<label>Imię: </label>
<input type="text" ng-model="twojeImie" placeholder="Twoje imię">
<h1>Witaj {{twojeImie}}!</h1>
</div>
Korzystanie z kontrolera
Oczywiście zazwyczaj będziemy potrzebować kontrolerów. Oto przykład jak możemy go stworzyć:
function markiAut($scope){
$scope.auta = [
{
marka: "Audi",
model: "A8"
},
{
marka: "Mitsubishi",
model: "Lancer"
},
{
marka: "Subaru",
model: "Impreza"
}
]
}
Musimy koniecznie pamiętać aby wszystkie nasze dane były przypisane do obiektu $scope. Nasz model, będący tablicą marek samochodów, musimy przypisać do scope’a, aby mógł być użyty w widoku. Dyrektywą ng-controller przypisujemy kontroler do elementu DOM podając jego nazwę. Przykład użycia w kodzie html:
<div ng-app="">
<div ng-contoller="markiAut">
<ul>
<li ng-repeat="auto in markiAut">
[{{$index + 1}}] {{auto.marka}} {{auto.model}}.
</li>
</ul>
</div>
</div>ng-repeat to dyrektywa, pozwalająca na renderowanie obiektów będących w tablicy. Używając tej dyrektywy dostępne są specjalne właściwości:
$index – jest to numer danego rekordu renderowanego
$first – zwraca wartość bool, mówiącą czy rekord jest pierwszy
$middle – zwraca wartość bool, mówiącą czy rekord nie jest pierwszy ani ostatni
$last – zwraca wartość bool, mówiącą czy rekord jest ostatni
Podsumowanie
Przedstawione powyżej przykłady to oczywiście absolutne podstawy AngularJS, przedstawiające ułamek jego możliwości. Jednak mam nadzieje że pomogą one początkującym zacząć zabawę w tym frameworkiem i zrozumieć jego główne koncepty! Zapraszam do korzystania z AngularJS!
