Ich versuche, Richtlinie zu erstellen, in dem ich das Modell beim Klicken durch Element ändern möchte. Irgendeine Art von Kontrollkästchen ... ist hier mein CodeProbleme mit isolierten Bereich und Bindungen
mainApp.directive('subCategory', function(){
return{
restrict: 'A',
scope: {
model: '=?ngModel'
},
link : function(scope, element){
scope.model = true;
element.click(function() {
if (element.hasClass('active')) {
element.removeClass('active');
scope.model = false;
} else {
element.addClass('active');
scope.model = true;
}
});
}
}
});
als ich versuchen zu $ sehen Gruppe dieses Kontrollkästchen in geordneten Steuerung von Objekt zu beobachten, die ng-Modell-Eigenschaften aller Kontrollkästchen enthält.
mainApp.controller('Filter',['$scope', function ($scope) {
$scope.data = {}
$scope.$watchCollection('data', function(newNames, oldNames) {
console.log('changed');
});
}]);
Wenn ich Eigenschaft definieren, indem scope.model = true;
es funktioniert und Arbeiten zu beobachten, aber wenn ich scope.model
auf Klick in irgendwelchen Gründen ändert sich nicht beeinflussen data
Objekt und Uhr funktioniert nicht. Kann mir jemand sagen warum?
Danke!
Mit 'ng-Modell 'deklarieren als Attribut instanziiert den [ngModelController] (https://docs.angularjs.org/api/ng/type/ngModel.NgModelController). Dieser Controller kämpft wahrscheinlich mit der benutzerdefinierten Anweisung. Die Verwendung des Präfix 'ng-' ist für Kerndirektiven reserviert. Weitere Informationen finden Sie in [AngularJS Wiki - Best Practices] (https://github.com/angular/angular.js/wiki/Best-Practices). – georgeawg
Danke @georgeawg! Sie haben Recht! – Adoratus