2013-10-08 109 views
15

我有一個字符串,其中包含我需要注入到我的控制器之一編程的服務的名稱。如何以編程方式通過名稱獲得Angular服務

function Ctrl() { 
    var serviceName = '$myService'; 
    var service = ??? 
} 

我假定這應該是很容易做類似的東西:

function Ctrl($injector) { 
    var serviceName = '$myService'; 
    var service = $injector.inject(serviceName); 
} 

我知道我沒有語法正確的,但有人可以給我正確的語法?

回答

32

你可以得到的服務是這樣的:

var myService = $injector.get('MyServiceName');

+3

我討厭它,當我錯過這麼簡單的東西,但我非常感激! –

相關問題