2015-05-12 170 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中看到這個解決方案。