Category Archives: javascript
EcmaScript парсер
http://esprima.org/
Красивая работа с кредитными карточками на клиентской стороне
http://kenkeiter.com/skeuocard/
AngularJS: $watch за объектами
Чтобы не вызывалась лишний раз функция, нужно добавить еще один параметр true в $watch:
1 2 3 |
$rootScope.$watch('session', function (value) { $scope.profile = ProfileDataService.get(); }, true); |
Но он иногда запускает обработчик, поэтому можно сделать внутри дополнительную проверку:
1 2 3 4 5 |
$rootScope.$watch('session', function (value, valueOld) { if (! angular.equals(value, valueOld)) { $scope.profile = ProfileDataService.get(); } }); |
AngularJS: провайдеры
Вот пример конфигурируемого провайдера JS Bin
Google Web Tracing Framework
https://chrome.google.com/webstore/detail/web-tracing-framework/gmdhhnlkjmknaopofnadmoamhmnlicme?hl=ru
npm для AngularJS
http://ngmodules.org/modules
AngularJS: добавить заголовки ко всем запросам к серверу
1 2 3 4 5 6 7 |
angular.module("YourAppModule", []).config(["$httpProvider", function($httpProvider) { $httpProvider.defaults.headers.common['custom'] = 'custom_val'; $httpProvider.defaults.headers.put['Content-Type'] = 'application/x-www-form-urlencoded'; $httpProvider.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded'; }]); |
Grunt-таск для избавления от лишних стилей в css
https://github.com/addyosmani/grunt-uncss Конфиг примерно такой:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
uncss: { dist: { files: { 'dist/css/tidy.css': ['app/index.html','app/about.html'] } }, options: { compress:true } } processhtml: { dist: { files: { 'dist/index.html': ['app/index.html'], 'dist/about.html': ['app/about.html'] } } } |
Объяснение работы AngularJS путём создания своего AngularJS
Начало серии статей. http://teropa.info/blog/2013/11/03/make-your-own-angular-part-1-scopes-and-digest.html Уровень подготовки читателя — средний. Объём текста — большой. Перевод — http://habrahabr.ru/post/201832/ (не читал).
AngularJS 1.2.0 вышел
Да, то чего так долго ждали, о чём так долго говорили большевики, свершилось! http://blog.angularjs.org/2013/11/angularjs-120-timely-delivery.html Animations and Transitions — самое главное, чего ждали Better error messages (including error minification) Strict Contextual Escaping Track By function to prevent duplicates in ng-repeat Controller As syntax to access controller instances in templates Promise A+ Compliance (http://promises-aplus.github.io/promises-spec/) Separation of ngRoute …