以角度在控制器中注入工厂
我正尝试在Angular的控制器中注入一个工厂,但我做不到。 这是我的代码。
app.controller('ManejadorEventosVista',['AdministradorMarcador',ManejadorEventosVista]);
'app'是对应于具有各自相关性的模块的变量。 控制器是'ManejadorEventosVista',并且需要工厂'AdministradorMarcador'提供的服务。
函数ManejadorEventosVista(){}
但是当我想在这部分代码中使用工厂'AdministradorMarcador'时,工厂无法识别。
ManejadorEventosVista.prototype.seleccionarMarcadorOrigen = function(){AdministradorMarcador.setTipoMarcador(AdministradorMarcador.MARCADOR_ORIGEN); };
我如何才能在ManejadorEventosVista.prototype.seleccionarMarcadorOrigen使用工厂'AdministradorMarcador'?
帮助或示例指导我?? ..谢谢..
ManejadorEventosVista
需要引用一个参数,并且您将能够将函数内的AdministradorMarcador
作为第一个变量的名称引用。 像这样
function ManejadorEventosVista(AdministradorMarcador){/**your code here**/}
你正在用线段['AdministradorMarcador', ManejadorEventosVista]
是声明你的函数依赖于AdministradorMarcador
,但是没有提供ManejadorEventosVista
的参数,AngularJS不知道你打算如何在你的控制器中引用AdministradorMarcador
。
这样做是为了允许AngularJS脚本被缩小,特别是通过现有的解决方案,因为它们会将您的函数的变量更改为单个字母的名称,从而使AngularJS无法确定要注入哪个服务或工厂。 注释使用字符串和基于位置的顺序来允许您的脚本工作,即使在缩小之后也是如此,因为字符串不会被流程改变。
另请参阅注释上的最新稳定文档
链接地址: http://www.djcxy.com/p/13639.html