Nastanak
AngularJS je nastao 2009. godine. Kreator Miško Hevery iz Google-a.
Osnovna obilježja
AngularJS je open-source Javascript MVC Framework.
Osnovno svojstvo je da povezuje Model i View u realnom vremenu.
Na taj način ako izvršimo neku izmjenu u View (npr. input polje) onda se odmah automatski izvrši izmjena i u Modelu.
Također vrijedi i obrnuto.
Osim toga, vrlo olakšava rad sa XHR (XMLHttpRequest) tj. sa AJAX.
Napomena: Ovakvom koncepcijom data binding u realnom vremenu dosta podsjeća na Smalltalk.
Pojmovi
- Model - JS objekti koji su ustvari podaci koji se šalju u View
- View - je prezentacija podataka, te služi i za prikupljanje JS eventa kao npr. click, mouseover. To je code napisan u HTML-u i CSS-u.
- Controler - To je 'spajalica' između Modela i Viewa odnosno logika
- directives - Novi atributi HTML-a koje koristi AngularJS npr: ng-app, ng-repeat ,...
- services - To su objekti koji nešto rade u ime drugih objekata npr. $scope ili $http
- filters - Metoda koja uzima dio iz niza i kreira novi, filtrirani niz
- routes - Omogućava upotrebu single page app na više View-ova
- modules - Paketi različitih dijelova aplikacije (controllers,services, filters...) koji se mogu ponovo koristiti npr. ngRoute


Bootstrap
Bootstrap je način na koji se izvršava AngularJS. Shematski je prikazan na slikama dolje.


Debug
Chrome je razvio plugin za debug koji se zove Batarang.
Callback funkcije
Funkcije u Javascriptu su objekti. Funkcije koje se koje se kao objekti upotrebljavaju kao argumenti neke druge funkcije nazivaju se callback funkcije.
Primjer 1: pokreni primjer » HTML code
Callback fja definirana unutar fje kao anonymous fja: pokreni primjer » HTML code
Callback fja definirana kao objekt izvan fje: pokreni primjer » HTML code