Требуемый по директиве контроллер не найден
У меня есть директива, что яЯ хотел бы получить еще одну директиву, к которой можно обратиться. Я пытался использовать директивные контроллеры, чтобы попытаться достичь этого.
Директива 1 будет находиться на той же странице, что и директива 2, а директива 1 будет вызывать методы, представленные директивой 2 'Контроллер:
Директива 1:
'use strict';
angular.module('angularTestApp')
.directive('fileLibrary', function () {
return {
templateUrl: 'views/manage/file_library/file-library.html',
require: 'videoClipDetails',
restrict: 'AE',
link: function postLink(scope, element, attrs, videClipDetailsCtrl) {
scope.doSomethingInVideoClipDirective = function() {
videClipDetailsCtrl.doSomething();
}
}
};
});
Директива вторая:
'use strict';
angular.module('angularTestApp')
.directive('videoClipDetails', function () {
return {
templateUrl: 'views/video_clip/video-clip-details.html',
restrict: 'AE',
controller: function($scope, $element) {
this.doSomething = function() {
console.log('I did something');
}
},
link: function postLink(scope, element, attrs) {
console.log('videoClipDetails directive');
//start the element out as hidden
}
};
});
Файл, где эти два используются и установлены как родные братья:
Я знаю, что, читая документацию, я понял, что контроллеры могут совместно использоваться, когда директивы находятся на одном элементе, что заставляет меня думать, что я могу смотреть на эту проблему неправильно. Кто-нибудь может поставить меня на правильный путь?