Так что это в основном для обеспечения обратной совместимости.Мне нужно добавить дополнительную функциональность размытия для большого количества HTML-элементов без необходимости редактировать методы контроллера, вызываемые атрибутом ng-blur этих элементов.
Я написал директиву для этого, но проблемаЭтот метод директивы, кажется, всегда завершает выполнение после методов ng-blur в контроллере.Мне нужно, чтобы метод директивы завершился до того, как начнется метод ng-blur в контроллере.
Вот базовый формат кода:
<input test-directive ng-model="testValue" ng-blur="ngBlurTest(testValue)">
Директива:
angular.module('testDirectives', [])
.directive('testDirective', [ function() {
return {
restrict: 'A',
require: 'ngModel',
scope: {
ngModel: '=',
},
link: function (scope, element, attrs, ngModelCtrl, test) {
element.bind('blur', function() {
console.log('This needs to appear first')
}
});
}
};
}])
Контроллер (Метод)
$scope.ngBlurTest = function(value) {
console.log('TEST FROM CONTROLLER: ' + value);
}
Спасибо за помощь!