directive例子1

时间:2023-03-09 03:47:13
directive例子1

directive例子1

(function() {
'use strict'; angular.module('app.widgets')
.directive('confirm', ['confirm2', 'toastr', function(confirm, toastr) {
return {
restrict: "A",
scope: {
ngClick: '&',
confirm: '@',
confirmIf: "=",
confirmOptions: "=",
confirmContext: '=',
confirmIfFalse: "&",
confirmIfFalseMessage: '@'
},
link: function(scope, ele, attrs) {
ele.unbind("click").bind('click', function(event) {
event.preventDefault(); var config = {};
config.content = scope.confirm;
config = angular.extend(config, scope.confirmOptions); var fn = scope.ngClick;
var context = scope.confirmContext; if (angular.isUndefined(scope.confirmIf) || scope.confirmIf) {
confirm(config, context)
.ok(function() {
fn();
})
} else {
if (attrs.confirmIfFalse) {
var ifFn = scope.confirmIfFalse;
if (ifFn) {
scope.$apply(ifFn);
}
} else if (scope.confirmIfFalseMessage) {
toastr.warning(scope.confirmIfFalseMessage);
}
}
})
}
};
}])
})();