У меня возникли проблемы с использованием функции Factory внутри моих вложенных директив.Использование функции Factory внутри вложенной директивы
Главный код работает, потому что он был протестирован на контроллере. Все мои файлы JavaScript загружаются в начале.
Это сценарий:
получить доступ todoController.js с использованием маршрутов, то он вызывает TaskList директиву , которая вызывает задачи директиву.
Я пытаюсь реализовать этот код (modalService.js):
(function(angular) {
gameOnApp.directive('modalButton', function($compile) {
return {
restrict: 'A',
priority: 1001,
terminal: true,
compile: function(elm, attrs) {
elm.attr('ng-click', "modal.openModal('" + attrs.modalId + "')");
elm.removeAttr('modal-button');
elm.removeAttr('modal-id');
var fn = $compile(elm);
return function(scope){
scope.modal = Modal;
fn(scope);
};
}
}
});
gameOnApp.factory('Modal', function(){
return {
openModal: function(modalId) {
console.log(modalId);
}
}
});
})(window.angular);
И на моем HTML я называю это так:
<li>
<span modal-button modal-id="12"><i class="fa fa-edit fa-fw"></i> Edit</span>
</li>
HTML-ответов является:
<li>
<span ng-click="modal.openModal('12')"><i class="fa fa-edit fa-fw"></i> Edit</span>
</li>
И задача Directi ве с кодом модальным:
gameOnApp.directive('task', function($compile, Modal) {
return {
restrict: 'E',
scope: false,
templateUrl: 'app/components/todo/taskView.html',
compile: function(elm, attrs){
return function(scope){
scope.modal = Modal;
}
}
};
});
И я знаю, что это не работает, потому что директива задачи не распознает нг-Клик функцию от модальных Директив.
Как я могу это решить?