Я пытаюсь создать директиву, которая будет использоваться в нескольких местах приложения, и я хочу, чтобы она выбрала контроллер.Angularjs требует от контроллера директивы
При использовании метода контроллера
return {
...
controller: 'BlogDashCourseCtrl',
...
}
он получает штраф контроллера. Но когда я это требую
return {
...
require: '^BlogDashCourseCtrl',
...
link: function($scope, iElm, iAttrs) {
$scope.title = iAttrs.title; // Do not share me with other directives
if($scope.title === $scope.step) { // $scope.step comes from a shared scope
...
}
}
}
не может найти контроллер.
Я не хочу, чтобы контроллер вызывался несколько раз. Я просто хочу, чтобы директивы делились областью, также имели личную область (так что $ scope в директиве не пузырится) и делать некоторые вещи с помощью службы.
Это не то, что делает параметр 'require'. Это не значит, что он наследует этот контроллер, но вы получаете доступ к нему (им) в функции 'link' (' link: function (scope, element, attrs, controllers) {') –
Позвольте мне пересмотреть вопрос Sergui – Danuss