2013-09-26 34 views
0

我想從一個特定的角度模塊編程JS解析服務,但我不能找到正確的方式來做到這一點。解決服務programmaticallyin AngularJs

我知道使用angular.injector([ 'NameOfModule'])。獲得( 'NameOfService')我可以檢索服務。但是,使用angular.injector不會檢索給定模塊的注入器,而是創建一個新的注入器。這意味着當它檢索服務時,因爲它是一個新的注入器,它沒有緩存服務,因此創建一個新服務器。這意味着我將有幾項相同的服務,因此它不再是單身人士,這顯然會造成問題。

我基本上想要做的是檢索特定模塊的噴油器,所以我可以嘗試檢索從注射器(緩存或不緩存)服務。有誰知道如何做到這一點?

回答

1

我的建議是注入$注射服務到您想要使用它的控制器\服務。這將返回應用程序正在使用的注入器,而不是像angular.injector那樣創建新的注入器。請參閱本詳細說明SO後Can't retrieve the injector from angular