Включение ng-click в директиву
Я строю директиву AngularJS. Я хочу, чтобы эта директива обернула другое содержимое, в котором есть нг-щелчок. Полученная кнопка ничего не делает при нажатии. Вот упрощенная версия кода, который я попробовал:
(HTML)
<div ng-app="someapp">
<div ng-controller="Ctrl1">
<h2>Example</h2>
<my-dir data-x="1">
<button ng-click="refresh()" id="refresh1">Refresh</button>
</my-dir>
<my-dir data-x="2">
<button ng-click="refresh()" id="refresh2">Refresh</button>
</my-dir>
</div>
</div>
(JavaScript)
var app = angular.module('someapp', []);
app.controller('Ctrl1', function($scope){ });
app.directive('myDir', function(){
return {
restrict: 'E',
scope: {},
template: '<div><p>Directive contents:</p><div ng-transclude></div></div>',
transclude: true,
link: function(scope, element, attrs){
$scope.y = attrs.x+1;
scope.refresh = function(){
console.log("Refresh Called, y = ", $scope.y);
}
}
};
});
Как я могу изменить это так, чтобы кнопка фактически вызывала функцию $ scope.refresh ()?
Дополнительные разъяснения:
Мне нужна локальная информация об объекте для директивы (может быть несколько из этой директивы в одном контроллере), поэтому я создаю новую область видимости.