Why is AngularJS mind-blowingly cool?
AngularJS is about extending HTML
not manipulating it after-the-fact
...but you can if you have to...
Comes with jqLite built in and can use jQuery
not even recommended to load it unless you need it!
ng-init
"Run this expression!"
ng-show
"Make me display: visible if..."
ng-click
"If I'm clicked, run this expression!"
ng-disabled
"Make me disabled if..."
But how is this different from good old onclick
, ...?
AngularJS applications have scopes
separate out the app from the page, and the app parts from each other
AngularJS has an HTML compiler
so why not make some custom html?
AngularJS directives
the real ultimate power
Always using directives
even if you don't know it yet!
Attribute directives
ng-click, ng-disabled, ng-show, ng-model
Directives have scope and can be isolated
not quite the same as handlers attached to the DOM
No working with window
, no need for $.fn.data()
All completely self-contained
Automatic two-way data binding
the bee's knees
Bind right to Plain Old JavaScript Objects
no need for custom model classes if you don't need them
No event binding, no message passing, no custom classes
It Just Works (tm)
Has all the bits you would expect
XHR, UI libraries, animation support, unit testing helpers, and more!
More libraries being developed all the time
Very active community
That's all I've got for now...