Список ссылок (на JSFiddle) разных вкусных примеров использования AngularJS можно найти тут.
Tag Archives: AngularJs
AngularJS: получаем scope/injector/controller из DOM
Небольшая заметка о том, как достать scope, injector либо controller из элементов DOM. Делается это очень просто:
var scope = angular.element(domElement).scope()
var injector = angular.element(domElement).injector()
var controller = angular.element(domElement).controller()
angular.element – это алиас на расширенный JQueryLite. Т.е. можем свободно использовать селекторы.
При необходимости получить rootScope проделвываем теже действия только с элементом, который определен как корневой для Angular:
var rootScope = angular.element(domElement).scope()
чаще всего это body:
var rootScope = angular.element('body').scope()
AngularJs: чем отличается provider, factory и service
Для начала абстрагируемся вообще от AngularJs и задач возложеных на 3 его метода provider, factory и service.
Попробуем представить, что у нас просто есть метод provider:
var provider = function(name, provider_) { [some code] }
и он как-то работает, как? – нас пока не интересует. Теперь посмотрим на код для метода factory:
function factory(name, factoryFn) { return provider(name, { $get: factoryFn }); }
из которго видно, что это просто обертка для provider.
Идем дальше: что же представляет собой service:
function service(name, constructor) { return factory(name, ['$injector', function($injector) { return $injector.instantiate(constructor); }]); }
– тоже обертка, только для factory.
Вот пример кода одной задачи реализованной 3мя способами.
С чего начать изучение AngularJS
Этот пост предназначен для тех, кто только начинает знакомиться с javascript фреймворком AngularJs.
UPD: Пост обновлен 25.10.2015 и является актуальным для Angular1.4.