https://coursetro.com/courses/8/Learn-Angular-2-Development-with-our-Free-Course
https://medium.mybridge.co/18-amazing-open-source-angular-projects-dd9e81d921ee#.tp1kiubwt
Promises in angular
http://www.dwmkerr.com/promises-in-angularjs-the-definitive-guide/
https://habrahabr.ru/post/221111/
http://www.alexkras.com/11-tips-to-improve-angularjs-performance/
http://codepen.io/nickmoreton/pen/Mawxvr example
https://github.com/gordonmzhu/simple-angular-seed
https://medium.com/@bojzi/anatomy-of-a-large-angular-application-f098e5e36994
http://habrahabr.ru/post/250149/
http://habrahabr.ru/post/250637/
http://habrahabr.ru/post/253103/
http://nathanleclaire.com/blog/2014/04/19/5-angularjs-antipatterns-and-pitfalls/
https://dncmagazine.blob.core.windows.net/downloads/AngularCheatSheet-DNCMagazine.pdf
https://www.airpair.com/angularjs/tips-n-tricks/speed-up-your-angular-apps-and-rid-sasqwatches
http://blog.mgechev.com/2015/04/20/fast-angular-data-structures-versionable/
http://www.creativebloq.com/web-design/build-data-dashboard-angularjs-121518544
http://habrahabr.ru/company/infopulse/blog/262389/
http://habrahabr.ru/company/nitrosdata/blog/252657/ learn and clone!
https://www.airpair.com/angularjs/posts/angularjs-tutorial
http://nathanleclaire.com/blog/2014/01/31/banging-your-head-against-an-angularjs-issue-try-this/
http://www.learn-angularjs-apps-projects.com/
http://css-live.ru/articles/ispolzovanie-angularjs-dlya-vizualizacii-dannyx.html
http://www.microsoftvirtualacademy.com/training-courses/introduction-to-angularjs
http://habrahabr.ru/post/246881/
http://habrahabr.ru/post/246905/
http://habrahabr.ru/post/247283/
https://scotch.io/tutorials/how-to-correctly-use-bootstrapjs-and-angularjs-together
http://www.dzone.com/articles/10-useful-guidelines-and-10
http://www.smashingmagazine.com/2015/01/22/angularjs-internals-in-depth/
Grid: https://github.com/ThirdCornerLLC/tc-grid
http://www.jquerybyexample.net/2014/12/latest-angularjs-interview-question-2.html
http://www.sitepoint.com/managing-client-state-angularjs/
https://www.youtube.com/watch?v=uV_YoyQhrJY&feature=share
Authorization
http://angular-route-segment.com/
http://habrahabr.ru/post/245049/
BOOKS
http://www.amazon.com/AngularJS-Questions-Answers-George-Duckett-ebook/dp/B00MV760O0/
http://www.amazon.com/AngularJS-UI-Development-Matthias-Nehlsen/dp/1783288477/
https://www.codementor.io/learn-angularjs
http://www.airpair.com/angularjs
http://www.airpair.com/angularjs?ti=#MxkrVCfYlQfeQLBy.99
http://www.thinkful.com/learn/angularjs-tutorial-build-a-gmail-clone/Getting-Started-with-AngularJS
https://news.ycombinator.com/item?id=8651641
http://marmelab.com/blog/2014/09/15/easy-backend-for-your-restful-api.html
http://johnmunsch.com/2014/09/24/im-open-sourcing-two-angularjs-projects/
https://www.youtube.com/watch?v=ec99SDwSyeI
https://code.angularjs.org/1.2.16/
http://vitalets.github.io/angular-xeditable/ edit in place!
http://www.airpair.com/angularjs/posts/top-10-mistakes-angularjs-developers-make
http://codecondo.com/angular-js-directives/
Factory -versus- Service
https://stackoverflow.com/questions/14324451/angular-service-vs-angular-factory
http://ng.malsup.com/#!/factory-vs-service
FLASK
http://blog.pangyanhan.com/posts/2013-08-27-ngtut.html very long
http://tutsbucket.com/tutorials/building-a-blog-using-flask-and-angularjs-part-1/
https://github.com/rxl/angular-flask
http://blog.john.mayonvolcanosoftware.com/building-a-blog-using-flask-and-angularjs-part-1/
http://blog.john.mayonvolcanosoftware.com/building-a-blog-using-flask-and-angularjs-part-2/
http://angular-data.pseudobry.com/
http://mgcrea.github.io/angular-strap/ Angular+ Bootstrap
http://chason.me/posts/displaying-json-data-as-a-table-using-flask/
http://g00glen00b.be/angular-d3/ angular with d3
python -m SimpleHTTPServer
http server will start in port 8000
You can also access it via 2following address:
http://192.168.1.2:8000
http://127.0.0.1:8000
If the directory has a file named index.html, that file will be served as the initial file.
If there is no index.html, then the files in the directory will be listed.
If you wish to change the port that's used start the program via:
python -m SimpleHTTPServer 8080
See the href and setRoute(i) below
<table>
<tr ng-repeat="item in items">
<td>{{item.key}}</td>
<td ng-repeat="i in item.Many">
<a href="#" ng-click="setRoute(i)">{{i}}</a>
</td>
</tr>
</table>
Example of Angular App
<!DOCTYPE html>
<head>
<script src="app.js" type="text/javascript"></script>
<script src="AppController.js" type="text/javascript"></script>
<title>Learning AngularJS</title>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.6/angular.min.js" type="text/javascript"></script>
</head>
<body ng-app='app' >
<div id='content' ng-controller='AppController'>
<h2>Hello {{helloTo.title}} !</h2>
<br> JSON RESULT: {{helloTo.result}}
</div>
<script>
angular.module("app", []) .controller("AppController", ['$scope','$http', function($scope, $http) { $scope.helloTo = {}; $scope.helloTo.title = "World, AngularJS"; var url = "http:/127.0.0.1:8000/my.json"; $http.get(url) //$http.jsonp(url+"?callback=JSON_CALLBACK") .success (function(data, status, headers, config){ $scope.guitarVariable = data; $scope.helloTo.result="SUCCESS IN READING JSON"; }) .error(function (data, status, headers, config) { $scope.helloTo.result="ERROR in READING JSON: "+status; } ); // end of function(data) } ]);
</script>
</body>
</html>>
Cross-origin resource sharing (CORS) allows Javascript to make requests to other domains. Compared to JSONP which only allows the GET HTTP verb, CORS allows all HTTP verbs (GET, POST, PUT, DELETE), making it an ideal candidate for RESTful services. The only drawback: CORS requires a modern browser (see Wikipedia for details).
checkboxes and radiobuttons
http://stackoverflow.com/questions/14514461/how-can-angularjs-bind-to-list-of-checkbox-values
http://vitalets.github.io/checklist-model/
http://scotch.io/tutorials/javascript/handling-checkboxes-and-radio-buttons-in-angular-forms
Bootstrap + Angular
https://github.com/Adaptv/adapt-strap
http://developer.telerik.com/featured/customizable-dashboards-angular-kendo-ui-bootstrap/
https://scotch.io/tutorials/how-to-correctly-use-bootstrapjs-and-angularjs-together
http://habrahabr.ru/hub/angularjs/
http://www.codeproject.com/search.aspx?q=AngularJS&doctypeid=1%3b3
http://blog.hfarazm.com/category/angular-js/
http://modernweb.com/2014/07/28/best-practices-building-angular-js-apps/
1 : Many
<table>
<tr ng-repeat="item in items">
<td>{{item.key}}</td>
<td ng-repeat="i in item.Many">
<a href="#" ng-click="setRoute(i)">{{i}}</a>
</td>
</tr>
</table>
list of custom directives
http://angular-js.in/
Tables
Main contenders
http://ui-grid.info/docs/#/tutorial
https://github.com/lorenzofox3/Smart-Table
http://lorenzofox3.github.io/smart-table-website/
https://github.com/l-lin/angular-datatables
http://blog.backand.com/ng-grid-and-a-simple-rest-api/
http://pointblankdevelopment.com.au/blog/angularjs-fixed-header-scrollable-table-directive
http://bazalt-cms.com/ng-table/ ng-table
http://habrahabr.ru/post/197646/ another table
https://github.com/alalonde/angular-scrollable-table
http://jsfiddle.net/alalonde/BrTzg/ scrollable and sortable table!
http://entwicklertagebuch.com/blog/2013/11/datatable-with-fully-dynamic-columns-in-angularjs/
http://www.josebalius.com/angular-ng-grid-and-ng-table-not-quite-there-yet/
https://github.com/zafarali/learning-angular
http://www.codeproject.com/Articles/607873/Extending-HTML-with-AngularJS-Directives
https://markwillcollins.silvrback.com/7-things-i-wish-i-knew-about-angularjs
http://code.tutsplus.com/tutorials/more-responsive-single-page-applications-with-angularjs-socketio-creating-the-library--cms-21738
Polymer, Web Components:
http://www.binpress.com/blog/2014/06/26/polymer-vs-angular/
http://www.peterbe.com/plog/what-stumped-me-about-angularjs
http://ruoyusun.com/2013/08/24/a-glimpse-of-angularjs-scope-via-example.html
https://egghead.io/articles/new-to-angularjs-start-learning-here
https://egghead.io/technologies/angularjs
http://www.planningforaliens.com/blog/2014/06/17/angular-resources/
http://habrahabr.ru/post/225065/
http://habrahabr.ru/post/225659/
Book with source code: Mastering Web Application Development with AngularJS
https://github.com/angular-app/
cd server
node server.js
http://localhost:3000/projectsinfo
Login with the admin user as defined in server/lib/initDB.js
var initDB = {
adminUser: { email: 'admin@abc.com', password: 'changeme', admin: true, firstName: 'Admin', lastName: 'User' },
http://www.yearofmoo.com/2012/10/more-angularjs-magic-to-supercharge-your-webapp.html
http://bitoftech.net/2014/01/13/building-spa-using-angularjs-part-2/
http://bitoftech.net/2014/01/13/building-spa-using-angularjs-example-part-3/
Showing and hiding parts of the DOM based on some conditions.
AngularJS comes equipped with four different sets of directives for this occasion (ng-show/ng-hide, ng-switch-*, ng-if and ng-include).
<label>Show content below:
<input ng-model="showSpecial" type="checkbox" />
</label>
<div ng-show="showSpecial" id="special">
This content will disappear and reappear if you click the checkbox above
Resolve
http://www.undefinednull.com/2014/02/17/resolve-in-angularjs-routes-explained-as-story/
When we’re using routes with different pages, we have another option to prevent
pages from rendering until some data has been loaded into the route.
We can specify data that we need loaded before the route is done loading by
using the resolve key in our route options object.
When the data loads successfully, then the route is changed and the view will
show up. If it’s not loaded successfully, then the route will not change and the
$routeChangeError event will get fired.
$routeProvider .when('/', { resolve: { redirect: function ($route, $location) { if $route.current.params.editMode == '1') { $location.path('edit'); <-- change to http://localhost:9000/#/edit } } } } })
routeProvider.when('/logout', { resolve: { logout: function($q, $location, User) { var deferred = $q; User.logout( function success() { deferred.reject(); $location.path('/login'); }, function error(error) { deferred.reject(error); $location.path('/'); } ); return deferred.promise; } } });
1) Don't even both learning ngRoute, got straight to UI-Router. It is significantly better and more powerful. https://github.com/angular-ui/ui-router.
2) Its an MVVM framework, not a MVC. I come from Rails Background and expected a MVC approach. Once I understood the differences between MVVM and MVC, AngularJs made much more sense.
3) Structure is critical. Perhaps this is true of any good web app, but taking the time to plan data models, processes and screens really helps. This thinking then needs to be converted into an AngularJS structure - states/routes, scopes, factories, services, controllers, and directives.
4) Directives make AngularJs really powerful. If you're new to AngularJs, directives might seem a strange concept. They are really just injectable, reusable code that can keep your controller skinny. If you find yourself repeating code, then chances are, you should be using a directive.
5) When you can think of 3 ways to solve something, chances are you need to think harder as there are probably another 3 ways. Which leads into my next point...
6) Stack overflow has lots of 'wrong' answers. They might work but there are better solutions. AngularJs should be 'elegant', so when something feels too complex, it probably is.
7) Scope inheritance between controllers is based on nesting of views and html, not the structure of your states or controllers. However, if you state accessing scope in parent controllers with $parent then you should consider using a factory.
8) Data binding across controllers should use a factory / services. Great video from thinkster that explains it. Also worth reading this stack overflow question to see a mistake I was initially making.
UI router
http://www.ng-newsletter.com/posts/angular-ui-router.html
http://joelhooks.com/blog/2013/07/22/the-basics-of-using-ui-router-with-angularjs/
http://stackoverflow.com/questions/20978248/angularjs-conditional-routing-in-app-config
http://habrahabr.ru/post/228863/ select inside directive template
$location
If you're trying to make a route change within a controller, you need to use a url alteration service. Angular has $location built in for just this purpose
http://docs.angularjs.org/api/ng.%24location
Dynamic routing, conditional routing
http://alonsorobles.com/2013/07/30/am-i-doing-dynamic-views-with-angularjs-right/
http://blog.john.mayonvolcanosoftware.com/protecting-routes-in-angularjs/
http://www.espeo.pl/authentication-in-angularjs-application/
http://www.thinkster.io/angularjs/SzcF8bGeVy/angularjs-redirectto
http://www.slideshare.net/nirkaufman/angular-js-routing-options
http://dotnetspeak.com/2013/12/angular-js-and-dynamic-menu-part-2
https://coderwall.com/p/vcfo4q
dynamic menu based on login
http://alonsorobles.com/2013/07/30/am-i-doing-dynamic-views-with-angularjs-right/
http://stackoverflow.com/questions/14297116/dynamic-menu-items-using-angularjs
https://github.com/olefriis/simplepvr-backend-ruby/blob/master/public/js/directives.js
ngDialog ngForm
http://blog.mapillary.com/technology/2014/03/18/confirm-button.html confirmation dialog
http://angular-js.in/ocmodal/
Listing 8-11. The Contents of the adminControllers.js File
angular.module("sportsStoreAdmin")
.constant("authUrl", "http://localhost:5500/users/login")
.controller("authCtrl", function($scope, $http, $location, authUrl) {
$scope.authenticate = function (user, pass) {
$http.post(authUrl, {
username: user,
password: pass
}, {
withCredentials: true
}).success(function (data) {
$location.path("/main");
}).error(function (error) {
$scope.authenticationError = error;
});
}
});
Angular directive which would simply show or hide a Twitter Bootstrap modal dialog
according to the events sent by the interceptor:
https://github.com/olefriis/simplepvr-backend-ruby/blob/master/public/js/directives.js
directive('loginDialog', function() {
return {
templateUrl: '/app/templates/loginDialog.html',
restrict: 'E',
replace: true,
controller: CredentialsController,
link: function(scope, element, attributes, controller) {
scope.$on('event:auth-loginRequired', function() {
element.modal('show');
});
scope.$on('event:auth-loginConfirmed', function() {
element.modal('hide');
scope.credentials.password = '';
});
}
}
});
https://www.youtube.com/watch?v=3uvo9pKs5b0&feature=youtu.be Form validation
http://olefriis.blogspot.com/2014/01/http-basic-authentication-in-angularjs.html
http://stackoverflow.com/questions/14297116/dynamic-menu-items-using-angularjs
Modals without angular-ui
http://philiv99.wordpress.com/2013/11/27/implementing-a-modal-popup-in-an-angularjs-directive/
http://panthersoftware.com/blog/2013/05/09/a-reusable-bootstrap-modal-form-directive/
https://github.com/Fundoo-Solutions/angularjs-modal-service
http://adamalbrecht.com/2013/12/12/creating-a-simple-modal-dialog-directive-in-angular-js/
https://github.com/dwmkerr/angular-modal-service
https://github.com/btford/angular-modal
http://www.dwmkerr.com/the-only-angularjs-modal-service-youll-ever-need/
http://aashishkoirala.wordpress.com/2014/03/17/angular-bootstrap-modal/
http://www.codeproject.com/Articles/786609/The-Only-AngularJS-Modal-Service-Youll-Ever-Need
ngDialog
http://ngmodules.org/modules/ngDialog
http://likeastore.github.io/ngDialog/
Modal which uses angular-UI:
http://www.sitepoint.com/creating-stateful-modals-angularjs-angular-ui-router/
https://gist.github.com/rnkoaa/8333940
http://codepen.io/m-e-conroy/pen/ALsdF
https://github.com/m-e-conroy/angular-dialog-service
http://stackoverflow.com/questions/19657323/bootstrap-angular-ui-modal-on-load
http://weblogs.asp.net/dwahlin/building-an-angularjs-modal-service
D3+Angular
https://leanpub.com/d3angularjs BOOK
http://krispo.github.io/angular-nvd3/#/
http://krispo.github.io/angular-nvd3/#/
http://blog.thousandeyes.com/integrating-testing-reusable-d3-components-angularjs-environment/
http://briantford.com/blog/angular-d3.html
https://github.com/loraxman/learnD3Angular
http://alexandros.resin.io/angular-d3-svg/
http://www.ng-newsletter.com/posts/d3-on-angular.html
http://cmaurer.github.io/angularjs-nvd3-directives/
https://www.youtube.com/watch?v=aqHBLS_6gF8
https://github.com/lorem--ipsum/cammy
http://www.reddit.com/r/javascript/comments/26g8zl/where_to_begin_with_learning_angularjs/
JSON
http://blog.hfarazm.com/angularjs-service/
http://stackoverflow.com/questions/19916362/angularjs-how-to-make-a-jsonp-request
http://stackoverflow.com/questions/22014840/angular-load-local-json-file-via-services
http://stackoverflow.com/questions/24268167/cannot-read-json-file-using-http
http://mikesknowledgebase.azurewebsites.net/pages/Services/WebServices-Page8.5.htm
http://stackoverflow.com/questions/16930473/angularjs-factory-http-get-json-file
http://www.lynda.com/AngularJS-tutorials/Using-http-service-read-JSON-file/154414/167524-4.html
http://stackoverflow.com/questions/13020821/how-to-load-json-into-my-angular-js-ng-model
http://www.reddit.com/r/angularjs/comments/221qj3/best_practice_when_calling_a_json_api_to_populate/
var nameSpace = angular.module("GuitarApp", []);
nameSpace.controller("GuitarFunction", ['$scope','$http', function($scope, $http)
{
$http.get('js/data.json').success (function(data){
$scope.guitarVariable = data;
});
}]
);
ng-options track-by
http://habrahabr.ru/post/223529/ track by
http://www.undefinednull.com/2014/08/11/a-brief-walk-through-of-the-ng-options-in-angularjs/
http://www.befundoo.com/blog/angularjs-ngmodel-with-objects/
http://www.codelord.net/2014/04/15/improving-ng-repeat-performance-with-track-by/
http://www.bennadel.com/blog/2556-using-track-by-with-ngrepeat-in-angularjs-1-2.htm
Tutorials
http://campus.codeschool.com/courses/shaping-up-with-angular-js/intro
http://tutorials.jenkov.com/angularjs/ajax.html
http://www.ng-newsletter.com/posts/how-to-learn-angular.html
http://blog.ponyfoo.com/2014/02/19/angle-brackets-synergistic-directives
http://habrahabr.ru/post/225659/
http://blog.ponyfoo.com/2014/02/14/angle-brackets-rifle-scopes
http://viralpatel.net/blogs/angularjs-routing-and-views-tutorial-with-example/
Articles
http://blog.angularjs.org/2012/11/angularjs-example-applications.html
http://www.codeproject.com/Articles/576246/A-Shopping-Cart-Application-Built-with-AngularJS
http://lostechies.com/gabrielschenker/2013/12/05/angularjspart-1/
http://toddmotto.com/ultimate-guide-to-learning-angular-js-in-one-day/
http://andru.co/building-a-simple-single-page-application-using-angularjs
6-parts article
https://www.binpress.com/tutorial/angular-js-looking-under-the-hood/153
READ THIS CODE
http://cacodaemon.de/index.php?id=44
http://odetocode.com/blogs/all
http://www.codeorbits.com/blog/2013/12/20/rapid-angularjs-prototyping-without-real-backend/
https://github.com/patelsan/angular-backless
http://suhairhassan.com/2013/10/21/refactoring-to-angularjs-directive.htm
http://deansofer.com/posts/view/14/AngularJs-Tips-and-Tricks-UPDATED
http://leftshift.io/8-tips-for-angular-js-beginners/
http://blog.pangyanhan.com/posts/2013-08-27-ngtut.html long tutorial
http://www.reddit.com/r/javascript/comments/25fux0/how_can_i_build_a_drag_and_drop_grid_like_this/
http://baudehlo.com/2014/02/24/angular-js-ng-click-still-fires-when-div-is-ngdisabled/
http://docs.angularjs.org/tutorial
Providers
https://code.angularjs.org/1.2.16/docs/guide/providers
http://anandmanisankar.com/posts/angularjs-provider-subsystem/
https://github.com/mgechev/angularjs-in-patterns
http://www.revillweb.com/5-useful-angularjs-directives-modules-and-services/
http://tylermcginnis.com/angularjs-factory-vs-service-vs-provider/
http://www.ng-newsletter.com/posts/beginner2expert-how_to_start.html
http://habrahabr.ru/post/221733/ providers, fabrics
$emit $broadcast $on
http://toddmotto.com/all-about-angulars-emit-broadcast-on-publish-subscribing/
youtube
https://www.youtube.com/watch?v=lHbWRFpbma4&feature=youtu.be
https://www.youtube.com/watch?v=ZhfUv0spHCY
https://www.youtube.com/watch?v=aGHzqwQU06g REST
NG-IF
http://habrahabr.ru/post/225243/
https://github.com/jmcunningham/AngularJS-Learning
http://csharperimage.jeremylikness.com/2014/04/learn-angular-js-explained-with-answers.html
http://nathanleclaire.com/blog/2014/04/19/5-angularjs-antipatterns-and-pitfalls/
https://medium.com/opinionated-angularjs/2e6a067c73bc
Apply Digest Watch
http://jimhoskins.com/2012/12/17/angularjs-and-apply.html
http://www.benlesh.com/2013/08/angularjs-watch-digest-and-apply-oh-my.html
http://nathanleclaire.com/blog/2014/01/04/5-smooth-angularjs-application-tips/
http://habrahabr.ru/post/221111/ Promisses $q
http://www.dwmkerr.com/promises-in-angularjs-the-definitive-guide/
http://blog.revolunet.com/blog/2013/07/23/angularjs-tips-n-tricks-2/
http://www.jptacek.com/2014/01/angularjs-further-with-ng-repeat/
http://stackoverflow.com/questions/19331779/how-to-highlight-a-selected-row-in-ngrepeat
Books
http://fdietz.github.io/recipes-with-angular-js/
http://teropa.info/build-your-own-angular
https://leanpub.com/Practical_AngularJS
https://leanpub.com/d3angularjs D3 + Angular
https://leanpub.com/recipes-with-angular-js/read
https://www.ng-book.com/index.html#packages
http://my.safaribooksonline.com/book/programming/javascript/9781939902009
http://avaxhome.cc/ebooks/programming_development/html_css_js_javascript/B00BFWI6CGJavaScript.html
cheat-sheets
http://www.cheatography.com/proloser/cheat-sheets/angularjs/
http://jtrussell.github.io/angular-selection-model/
http://www.ng-newsletter.com/posts/
http://www.ng-newsletter.com/posts/building-2048-in-angularjs.html
http://davidandsuzi.com/using-react-for-faster-renders-and-isomorphism-in-angular/
Autocomplete in text HTML control datalist does not work in Safari
http://css-tricks.com/relevant-dropdowns-polyfill-for-datalist/
http://baymard.com/labs/country-selector
http://www.thumbtack.com/engineering/introducing-smarty/
https://news.ycombinator.com/item?id=7905386
https://github.com/zensh/ui-autocomplete
http://jqueryui.com/autocomplete/#combobox
http://stackoverflow.com/questions/11979771/twitter-bootstrap-inline-input-with-dropdown
Angular+Bootstrap
http://mgcrea.github.io/angular-strap/
https://news.ycombinator.com/item?id=7552561
http://blog.safaribooksonline.com/2014/03/27/13-step-guide-angularjs-modularization/
http://thecodebarbarian.wordpress.com/2014/01/31/what-you-need-to-know-about-angularjs-data-binding/
https://github.com/jmcunningham/AngularJS-Learning
http://www.reddit.com/r/angularjs/comments/1f65ms/any_good_angularjs_tutorials_or_books_or_a_road/
http://scotch.io/category/tutorials/javascript
http://blog.scalyr.com/2013/10/31/angularjs-1200ms-to-35ms/
$http.post()
http://www.reddit.com/r/angularjs/comments/2mt4ee/how_do_i_pass_in_a_parameter_to_httppost/
code
https://github.com/angular/angular.js/wiki/JsFiddle-Examples
https://github.com/ianlopshire/adjure
http://jsbin.com/jepixije/1/edit
Search form in https://bitbucket.org/bami/todo/overview
<form class="form-search">
<div class="input-append">
<input type="text" ng-model="query" class="input-medium search-query" placeholder="Search">
<button ng-click="reset()" type="submit" class="btn"><i class="icon-search"></i></button>
</div>
<button ng-click="query=''; reset()" ng-disabled="!query" type="submit" class="btn">Reset</button>
</form>
http://www.garabagne.io/2014/06/08/the-life-and-times-of-the-angular-provider/
http://habrahabr.ru/post/215297/
сервис используется в качестве Модели в теории MVC, то есть для работы с данными. К примеру, вы можете создать сервис пользователя $user для хранения данных в куках или локальном хранилище. Или сервис $api — обертку для библиотечного $http, который будет осуществлять взаимодействие с вашим серверным API. Но сервисом могут быть и процессы, которые выполняются фоном, и просто библиотеки объектов, функций, которые вы планируете использовать в разных местах кода. Сервисы — singleton-ы, выполняющие какую-либо конкретную задачу, которая является общей для всех или конкретного веб-приложения. Например, $http сервис, который является оберткой над XMLHttpRequest. Несколько примеров других сервисов (полный список смотрите в документации):
$compile — компиляция HTML-строки или части DOM-а в шаблон, связывание шаблона с конкретным scope-ом;
$cookies — предоставляет доступ на чтение/запись к cookies.
$location — работа с адресной строкой
$resource — фабрика по созданию ресурсных объектов, предназначенных для взаимодействия с серверными (RESTful) источниками данных;
контроллеры — это структурный компонент, который используется для осуществления взаимодействия между сервисами»
The primary responsibility of a controller is to initialize scope objects. In practice, the initialization logic consists of the following responsibilities:
Providing initial model values
Augmenting $scope with UI-specific behavior (functions)
директива Нечто привязанное к элементу DOM. Как привязано? Как тэг, как аттрибут тэга, как класс тэга.
http://programmers.stackexchange.com/questions/252288/angularjs-directive-vs-service-vs-controller
scope
A $scope object in AngularJS is here to expose the domain model to a view (template). By assigning properties to scope instances, we can make new values available to a template for rendering.
AngularJS models are plain, old JavaScript objects. We are not obliged to extend any of the framework's base classes nor construct model objects in any special way.
It is possible to take any existing, pure JavaScript classes or objects and use them
in the same way as in the model layer. We are not limited to model properties being represented by primitive values (any valid JavaScript object or an array can be used). To expose a model to AngularJS you simply assign it to a $scope.
The $rootScope instance gets created when a new application is bootstrapped.
The ng-controller directive is an example of a scope-creating directive. AngularJS will create a new instance of the Scope class whenever it encounters a scope-creating directive in the DOM tree. A newly-created scope will point to its parent scope using the $parent property.
И контроллеры, и директивы имеют ссылку на scope, но не имеют ссылок друг на друга.
Фильтры предназначены для форматирования данных перед отображением их пользователю, а также фильтрации элементов в коллекциях. Примеры фильтров (полный список можно посмотреть в документации): currency, date, orderBy, uppercase. Использование фильтров достаточно традиционно: {{ expression | filter1 | filter2 }}
http://plnkr.co/edit/ypWMf7?p=preview Example of filter with regular expression SQL LIKE
look at the filter method of the arrayUtils service.
FILTERS
http://scotch.io/tutorials/javascript/all-about-the-built-in-angularjs-filters
http://suhairhassan.com/2013/07/25/angularjs-in-depth-part-2.html
https://github.com/a8m/angular-filter
Generally you don't want the Controller to be doing any data processing. It serves as the connector between your view and your data. The rule of thumb is "Fat Services, skinny controllers". By putting the logic/data in a service/factory, you only have to write it once & then you can take advange of angular depency injection and inject into any many controllers, & other services, as you like.
Splitting in multiple files
https://docs.angularjs.org/api/ng/type/angular.Module
http://crossplatform.net/modularizing-your-angularjs-code/
http://blog.akquinet.de/2013/01/22/maintainable-rich-web-applications-with-angularjs/
http://blog.safaribooksonline.com/2014/04/08/refactoring-angularjs-get-hands-filthy/
Passing data between controllers
http://stackoverflow.com/questions/17952620/angularjs-service-passing-data-between-controllers
http://www.codeproject.com/Tips/773147/Communication-between-the-Controllers-in-AngularJS
https://variadic.me/posts/2013-10-15-share-state-between-controllers-in-angularjs.html
http://stackoverflow.com/questions/20181323/passing-data-between-controllers-in-angular-js
https://egghead.io/lessons/angularjs-sharing-data-between-controllers
http://www.codeproject.com/Tips/773147/Communication-between-the-Controllers-in-AngularJS
http://onehungrymind.com/angularjs-sticky-notes-pt-1-architecture/
Page load
http://stackoverflow.com/questions/15458609/angular-js-how-to-execute-function-on-page-load
http://stackoverflow.com/questions/16002984/angularjs-how-can-i-do-a-redirect-with-a-full-page-load
http://stackoverflow.com/questions/18875467/redirect-to-new-page-in-angularjs-using-location
http://scotch.io/tutorials/javascript/how-to-use-ngshow-and-nghide
Login
http://blog.brunoscopelliti.com/deal-with-users-authentication-in-an-angularjs-web-app
https://www.firebase.com/blog/2014-07-25-ionic-simple-login.html
http://witoldsz.github.io/angular-http-auth/
http://jsfiddle.net/mrajcok/jNxyE/
http://arthur.gonigberg.com/2013/06/29/angularjs-role-based-auth/
http://www.codeproject.com/Articles/784106/AngularJS-Token-Authentication-using-ASP-NET-Web-A
http://www.sitepoint.com/implementing-authentication-angular-applications/
http://www.kendar.org/?p=/tutorials/angularjs/part09
http://www.kdelemme.com/2014/03/09/authentication-with-angularjs-and-a-node-js-rest-api/
https://medium.com/opinionated-angularjs/7bbf0346acec
http://angular-tips.com/blog/2013/08/consuming-services/
http://www.slideshare.net/joshs633/angularjs-authentication-patterns
http://stackoverflow.com/questions/18449516/angularjs-menu-login-logout-loading
http://maffrigby.com/maintaining-session-info-in-angularjs-when-you-refresh-the-page/
https://docs.auth0.com/angular-tutorial
http://www.bfcamara.com/post/66001429506/authentication-in-a-spa-with-angular
http://stackoverflow.com/questions/20496458/login-page-in-angularjs
http://vlkan.com/blog/post/2012/09/16/an-authentication-service-for-angularjs/
http://codereview.stackexchange.com/questions/21245/creating-a-simple-login-with-angularjs
http://danielstudds.com/basic-angular-front-end-for-authentication-spa-part-3/
Video
https://www.youtube.com/watch?v=aGHzqwQU06g&feature=em-subs_digest REST API
https://www.youtube.com/watch?v=f7AU2Ozu8eo Javascript Development Workflow
https://www.youtube.com/watch?v=aGHzqwQU06g
https://www.youtube.com/watch?v=lHbWRFpbma4
https://www.youtube.com/watch?v=1JS07_sFMcs
https://www.youtube.com/watch?v=2geC50roans
https://www.youtube.com/watch?v=tnXO-i7944M
* Part 1: Intro to Angular JS (50 minutes) [1]
* Part 2: End to End with Angular JS (52 minutes) [2]
* Part 3: Security with Angular JS (30 minutes) [3]
[1] - http://www.youtube.com/watch?v=8ILQOFAgaXE
[2] - http://www.youtube.com/watch?v=hqAyiqUs93c
[3] - http://www.youtube.com/watch?v=18ifoT-Id54
http://avaxhome.cc/ebooks/programming_development/PluralsightAngularJSInDepth2014.html
http://avaxhome.cc/ebooks/eLearning/Lynda_Up_and_Running_with_AngularJS.html
Angular-UI
http://angular-ui.github.io/bootstrap/
ANGULAR-UI-SELECT
http://plnkr.co/edit/a3KlK8dKH3wwiiksDSn2?p=preview
https://github.com/angular-ui/ui-select
http://habrahabr.ru/post/190370/ list
http://habrahabr.ru/post/200670/ long list
Articles
http://habrahabr.ru/post/149060/
http://habrahabr.ru/post/182670/ scope
http://habrahabr.ru/post/172975/
http://habrahabr.ru/post/190342/
http://habrahabr.ru/post/215297/
http://habrahabr.ru/post/215185/ Angular + Bootstrap
http://habrahabr.ru/post/190958/ routing
http://habrahabr.ru/post/149757/ Admin Panel 1
http://habrahabr.ru/post/150321/ Admin Panel 2
http://habrahabr.ru/post/197762/ hints and debug
Angular+REST
http://jordiburgos.com/post/2014/smallest-easiest-rest-server-python.html
http://baweaver.com/blog/2014/10/04/revelling-in-rest/
RESTANGULAR
http://sauceio.com/index.php/2014/07/angularjs-data-models-http-vs-resource-vs-restangular/
http://mgonto.github.io/restangular-talk-with-image-right/#15
http://www.parleys.com/play/535a189ee4b0c5ba17d43455/chapter29/about
https://github.com/mgonto/restangular REST
$resource
http://habrahabr.ru/post/180941/ REST
http://www.sitepoint.com/creating-crud-app-minutes-angulars-resource/
http://coder1.com/articles/consuming-rest-services-angularjs
The $resource service is distributed in a separate file (angular- resource.js), and resides in a dedicated module (ngResource). To take advantage of the $resource service we need to include the angular-resource.js file and declare dependency on the ngResource module from our application's module.
Calls to the $resource service return a generated constructor function augmented with methods to interact with a RESTful endpoint: query, get, save and delete.
https://docs.angularjs.org/api/ngResource/service/$resource
Вот так вы можете получить список коммитов репозитория на Github:
var commits = $resource('https://api.github.com/repos/:user/:project/commits').get({user: 'mkotsur', project: 'gitoscop'})
http://www.bennadel.com/blog/2614-httpi-a-lightweight-resource-inspired-module-for-angularjs.htm
https://news.ycombinator.com/item?id=5584967 learning links
https://github.com/mgechev/angularjs-style-guide
Flask+Angular
http://blog.john.mayonvolcanosoftware.com/building-a-blog-using-flask-and-angularjs-part-1/
https://github.com/search?p=2&q=flask+angularjs&ref=cmdform&type=Repositories
https://github.com/shuhaowu/projecto
https://github.com/martinp/jarvis2 Awesome dashboard built with Flask and AngularJS
https://github.com/mukund-kri/flask-and-angular
https://github.com/gouthambs/angularjs-flask
https://github.com/evanemolo/flask-angularjs-todo-app
https://github.com/lukasz-madon/crud
https://ryankaskel.com/blog/2012/11/25/end-to-end-testing-with-angularjs-and-flask
http://pythonhosted.org/Flask-AlchemyView/
https://www.npmjs.org/package/generator-angular-flask
https://bitbucket.org/bami/todo/overview Angular+Flask
The database is initialized with one admin (password:admin) and one standard user (password: user)
https://github.com/rxl/angular-flask
https://github.com/rayokota/generator-angular-flask
https://github.com/vinceprignano/chatapp
https://github.com/vinceprignano/todoapp
http://www.reddit.com/r/webdev/comments/1edv60/
http://dedalusj.github.io/posts/integrating-flask-and-angularjs/
http://stackoverflow.com/q/14994391/561309
http://docs.angularjs.org/guide/concepts
https://github.com/jmcunningham/AngularJS-Learning
http://stackoverflow.com/questions/9682092/databinding-in-angularjs
https://github.com/mgechev/angularjs-style-guide
https://news.ycombinator.com/item?id=6102380
https://news.ycombinator.com/item?id=5839099 Angular
http://www.codeorbits.com/blog/2013/12/20/rapid-angularjs-prototyping-without-real-backend/
http://habrahabr.ru/post/187808/
http://habrahabr.ru/post/165275/
http://stephanebegaudeau.tumblr.com/post/48776908163/everything-you-need-to-understand-to-start-with
http://floatleft.com/notebook/diving-into-angularjs
http://briantford.com/blog/huuuuuge-angular-apps.html
https://news.ycombinator.com/item?id=5584967
http://habrahabr.ru/post/149060/
http://css.dzone.com/articles/shift-towards-client-side-mvc
http://rmurphey.com/blog/2012/04/12/a-baseline-for-front-end-developers/
http://news.ycombinator.com/item?id=3833200
Download file using AngularJS
http://stackoverflow.com/questions/24080018/download-file-from-a-webapi-method-using-angularjs
http://stackoverflow.com/questions/24080018/download-file-from-a-webapi-method-using-angularjs
http://tutorials.jenkov.com/angularjs/ajax.html
https://groups.google.com/forum/#!topic/angular/67Fp-Gzi8kY
http://stackoverflow.com/questions/20300547/download-csv-file-from-web-api-in-angular-js
http://stackoverflow.com/questions/16670754/angularjs-simple-file-download
<a target="_self" href="mysite.com/uploads/ahlem.pdf" download="foo.pdf">
http://atasteofsandwich.wordpress.com/2014/02/03/client-side-csv-download-with-angularjs/
Following does not work in Safari