2013-10-08 9 views
15

Ho una stringa che contiene il nome di un servizio che ho bisogno di inserire in uno dei miei controller a livello di programmazione.Come ottenere il servizio angolare per nome a livello di programmazione

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

Io parto dal presupposto che dovrebbe essere abbastanza facile da fare qualcosa di simile a:

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

So che non ho la sintassi corretta, ma qualcuno può darmi la sintassi corretta?

risposta

32

È possibile ottenere un servizio come questo:

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

+3

Odio quando mi manca qualcosa di così semplice, ma apprezzo molto! –

Problemi correlati