.directive('dateRange', [
function () {
return {
scope:{},
restrict: 'A',
controller: 'dateRangeController',
templateUrl: "daterange.tpl.html",
link: function (scope, element) {
var container = element;
scope.dosmth = function () {
...
};
}
};
}
]);
<span ng-click="dosmth()">
Все, что мне нужно - это получить доступ к области и контейнеру внутри функции dosmth(). Я знаю, что это возможно. Но я не могу понять, почему в этом случае это не сработает.
В отдельной директиве scope, которую вы создали, область не имеет ничего унаследованного от родителя, поскольку декларация является пустой scope:{}
Обозначьте переменные или функции там, как показано ниже.
scope: {
varOne:'@',
vartwo:'=',
methodone:'&'
}
или удалить scope:{}
из определения вашей директивы.
dosmth()
?