Im new in angularjs. У меня есть div #single, я хочу изменить цвет фона, а затем хочу, чтобы сервер back-end вызывал событие click. Я не знаю, как это делается в пользовательской директиве angularjs. любая помощь будет оценена б моего HTML кодКак зарегистрировать событие click в директиве в angularjs
<div id="single" class="" ng-style="{'background':x.is_read == 0 ?
'rgba(98, 95, 95, 0.87)': '#A4A4A4'}" ng-repeat="x in notification" chang-color>
changColor является директивой, имеет следующий код. пожалуйста, помогите мне, как это сделать
var app = angular.module('smac', []);
app.controller('asd',function ($http,$scope) {
app.directive("changColor", function() {
return {
restrict: 'A',
scope: {},
link: link
};
function link (scope, element) {
element.on('click', onClick);
}
function onClick() {
alert('as');
$(this).css({ 'background': '#A4A4A4' });
// after this back end call
}
});
});
Директива создает изоляционную область, которая изолирует переменную 'уведомление' в' ng-repeat'. Также изменения стиля в пользовательской директиве конкурируют с директивой 'ng-style'. – georgeawg
Вы говорите, что у меня уже есть ng-класс и повторяется директива по этому поводу, поэтому я не могу применить дальнейшую директиву? @georgeawg – Asad
Вы можете комбинировать директивы с одним и тем же элементом, но вам нужно избегать конфликтов областей. См. [Комплексная директива по API-интерфейсу AngularJS] (https://docs.angularjs.org/api/ng/service/$compile#-scope-). – georgeawg