我需要在angularJS中使用几个不同的指令。指令具有不同的模板,控制器应以非常相似的方式工作,彼此之间的变化非常小。
我正在考虑只使用一个共享控制器,使其行为适应它所包含的指令,就像代码中描述的那样:
var module = angular.module('app', []);
module.directive('myFirstDirective', function () {
return {
scope: {},
controller: 'MyController',
templateUrl: './directives/first.html'
};
});
module.directive('mySecondDirective', function () {
return {
scope: {},
controller: 'MyController',
templateUrl: './directives/second.html'
};
});
module.controller('MyController', function ($scope) {
$scope.myEvent = function () {
//if it's first directive do this
//if it's second directive do that
};
});
有角度的方法吗?
答案 0 :(得分:1)
您可以在指令中使用ng-init="callback1()"
和ng-init="callback2()"
。并描述控制器中的两个回调。