Leslie Hanks Leslie Hanks - 1 year ago 84
Javascript Question

How to get Angular service by name programmatically

I have a string that contains the name of a service I need to inject into in one of my controllers programmatically.

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

I am assuming it should be pretty easy to do something similar to:

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

I know I don't have the syntax correct but can someone give me the correct syntax?

Answer Source

You can get a service like this:

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

Recommended from our users: Dynamic Network Monitoring from WhatsUp Gold from IPSwitch. Free Download