Poniżej znajduje dyrektywy, które napisałem,angularjs dyrektywa nie działa
angular.module('netVogue.directives', []).
directive('set-First-Active', function() {
return function(scope, element, attrs){
alert('sample');
element.addClass("active");
};
});
Dodałem tę dyrektywę do mojego modułu w poniższy sposób,
angular.module('netVogue', ['netVogue.filters', 'netVogue.services', 'netVogue.directives']);
użyłem tej dyrektywy w moim szablonie w następującym formacie:
<div class="item" ng-repeat="viewPrintcampaign in viewPrintcampaigns" ng-init="first=$first" set-First-Active>
</div>
Nie widzę jednak żadnej reakcji na alert lub zajęcia dodany. Czy ktoś może mi w tym pomóc? Z powodu pewnej zależności nie chcę używać "ng-class", ale chcę dodać class = 'active' dla pierwszego elementu ng-repeat.
Każda pomoc zostanie bardzo doceniona. Z góry dziękuję.
Dzięki za odpowiedź Artem. Jeszcze jedna kwerenda, nie jest ustawiona - możliwa jest nazwa pierwszej aktywnej? Mamy już możliwe nazwy dyrektyw, takie jak ng-bind, x-ng-bind, które są podobne do set-First-Active. –
@Abdul Kiedy deklarujesz dyrektywę, nazywa się ona "setFirstActive". Po wywołaniu dyrektywy można użyć "set-first-active", "set_first_active", "data-first-active", "x-first-active". –
Rozumiem. Dziękuję za wyjaśnienie tego jeszcze raz. –