Я пытаюсь понять директивы, я могу легко использовать функцию шаблона, чтобы выбросить свой HTML, однако, если у меня есть ng-щелчок в моем шаблоне, как я могу получить к нему доступ в функции ссылки?
Моя директива:
app.directive('directiveScroll', function () {
return {
restrict: 'AE',
replace: 'true',
template: '<div class="scroll-btns">' +
'<div class="arrow-left" ng-click="scrollLeft(sectionID)"></div>' +
'<div class="arrow-right" ng-click="scrollRight(sectionID)"></div>' +
'</div>',
link: function(scope, elem, attrs) {
$scope.scrollRight = function () {
console.log("scrollRight clicked");
};
$scope.scrollLeft = function () {
console.log("scrollLeft clicked");
};
}
};
});
Как видите, я добавил $scope.scrollRight
к моей функции link
, однако при щелчке в консоли ничего не появляется.
Если я размещу:
$scope.scrollRight = function () {
console.log("scrollRight clicked");
};
$scope.scrollLeft = function () {
console.log("scrollLeft clicked");
};
В моем контроллере (и вне моей директивы) он работает так, как ожидалось.
Любая помощь приветствуется.