Мы создаем директиву для увеличения и уменьшения числа в текстовом поле, когда пользователь нажимает на кнопки.Директива никогда не называется angularjs
Вот код моей пользовательской директивы.
var CEDirectives = angular.module('App.customnumberdirectives', [])
.directive('ngcustomNumber', ['$compile', function ($compile) {
var TEMPLATE_URL = '/customnumber/index.html';
var tem = '<div class="wrapper">' +
' <input type="text" data-ng-model="{{model}}" data-ng-blur="onBlurHandler()">' +
' <button ng-click="Increase()" style="cursor:pointer; background-color: transparent">INC</button>' +
' <button ng-click="Decrease()" style="cursor:pointer; background-color: transparent">DEC</button>' +
'</div>';
// Set the default template for this directive
$templateCache.put(TEMPLATE_URL,tem);
return {
restrict: "E",
scope: {
model: '@',
onblurevent: '&'
},
replace: true,
templateUrl: function (element, attrs) {
return attrs.templateUrl || TEMPLATE_URL;
},
link: function (scope, element, attributes) {
scope.onBlurHandler = function() {
if (scope.onblurevent) {
scope.onblurevent();
}
};
scope.Increase = function() {
alert('Inc');
};
scope.Decrease = function() {
alert('Dec');
};
}
};
} ]);
В представлении HTML: -
<ngcustomNumber model="weight" onblurevent="Save"></ngcustomNumber>
(1) Нет ошибки в консоли.
(2) Пробовал поставить предупреждение в верхней части директивы. Не появляется предупреждающее сообщение.
Заранее благодарен!
ВГА вы применили ngApp в вашем HTML –
Да. Его в теге HTML. –
App.customnumberdirectives - это имя вашего модуля, чтобы подтвердить это? –