2015-06-01 3 views
1

У меня есть одностраничное приложение (angularjs + angular-ui-router), и есть много элементов с 'someCssClass'.Добавление ngInit ко всем элементам с указанным классом css

Мне нужно добавить глобальный обработчик (у объекта window), который обрабатывает все эти элементы init event. Есть ли способ сделать это, за исключением того, что вручную добавляет ngInit (или некоторые подобные этому) для каждого элемента в каждом представлении?

ответ

0

Я в конечном итоге с директивой и link вариант.

app.directive('someCssClass', function() { 
return { 
    restrict: 'C', 
    link: function initHandler(scope, element, attrs){} 
}; 
}); 
0

Пример по JSFiddle.

Угловая директива имеет параметр restrict, который может быть классом. Поскольку у вас уже есть классы по элементам, вы можете их использовать.

И $emit/$on для событий, с какими данными вам нужно.