我正在尝试尽可能多地构建通用代码。
所以我有 2 个指令,一个嵌套在另一个内部,而我希望嵌套指令调用主控制器 $scope 上的方法。
但相反,它请求父指令上的方法,我想知道如何针对主控制器范围而不是父指令执行方法。
这是我的问题的示例代码我的 HTML 应该是这样的:
<div ng-controller='mainctrl'>
<div validator>
<div datepicker select-event='datepickerSelected()'/>
</div>
</div>
Javascript:
var app = angular.module("app",[]);
var mainctrl = function($scope){
$scope.datepickerSelected = function(){
//I WANT TO ACCESS THIS METHOD
}
}
app.directive("validator",function(){
return {
scope : {
//the datepicker directive requests a datepickerSelected() method on this scope
//while I want it to access the mainctrl scope
}
link: function(scope){
//some code
}
}
});
app.directive("datepicker", function(){
return{
scope: {
selectEvent: '&'
}
link: function(scope, elem){
//example code
$(elem).click(scope.selectEvent); //want this to access mainctrl instead validator directive
}
}
});