0
我试图工厂添加到现有的指令内。目前这个功能还在制定中,而且我对JS的角度还是比较新的,但还是很强大。从一般的JS范围来看,一切似乎都应该没问题。但是,设备和remoteTerminalFactory在进入链接功能时不存在。我在返回之前添加了一个变量,这也不再存在。它必须是某种范围问题,但我不明白是什么导致了这个问题。不能访问注射服务向链路功能
'use strict';
angular.module('App')
.directive('modalRemoteTerminal', ['equipment', 'remoteTerminalFactory', function (equipment, remoteTerminalFactory) {
var test = true;
// equipment & remoteTerminalFactory exist as expected
return {
templateUrl: 'app/equipment-detail/health-tab/modal-remote-terminal/remote-terminal.html',
restrict: 'E',
link: function (scope, element, attrs) {
// test, equipment & remoteTerminalFactory are undefined
scope.modalCtrlRemoteTerminal = {};
scope.remoteTerminal = function(){
scope.modalCtrlRemoteTerminal.openModal();
};
}
};
}]);
'设备'和'remoteTerminalFactory'应该在你的链接函数中定义。你可以显示不工作的代码吗? – rob
我目前没有任何代码,因为我无法访问我注入的工厂。据我所知,你没有在链接函数中定义它,因为它已经在指令中完成了。我不应该有权访问链接函数内部注释中提到的那三个变量吗? –
是的,您将有权访问链接功能中的这三个变量。尝试在plunkr中重现您的问题 – rob