2015-05-12 133 views
1

假设我使用一个名为constants的模块。角模块和依赖注入

angular.module("constants", []) 
.constant("A", 10); 

我想用另一个模块这种不断A

angular.module("moduleThatUseConstants", ["constants"]) 
.service("B", ["A", Services.B]); // here I use A 

这一工程!但是如果我已经有另一个常量(或控制器等),称为A

angular.module("moduleThatUseConstants", ["constants"]) 
.service("A", [Services.A]); 
.service("B", ["A", Services.B]); // ??? 

问题:如何指定A来自模块constants?我想:

.service("B", ["constants.A", Services.B]); 

但是,这并不工作$injector:unpr Unknown Provider "constants.A"

+0

如果您已经有另一个常量(或控制器等),名为A_将被用于最后包括,您不能指定从哪里服务 – Grundy

+0

它是合乎逻辑的,它将使用“最后包含的A”。但我不能指定依赖项的源(模块)? –

+0

你不能指定,可能它解决了角度2.0 – Grundy

回答

0

你不能做到这一点。后面的同名名字将永远解决。这是Angular 1.x中DI的缺点之一。我期望在Angular 2 DI中看到这个解决方案。