Suppose I have service modules
export default function($q) {
return $q.doSomething();
}
export default function($state) {
return $state.doAnotherThing();
}
And I will say that I have a services index file
import someService from 'someService';
import antoherService from 'anotherService';
export default {
someService: someService,
anotherService: anotherService,
}
In my angular module I want to be able to register them all (eloquently).
import services from './services';
angular.module('awesomeModule', [])
.services(services);
I'm having trouble finding a clean, clean way to register the index module so that I can prevent each service from registering separately in awesomeModule. Any way to do this?
* EDIT *
Using the @sdgluck clause, I created a utility function / module for registering arbitrary types of services with a module.
export function register(module, type, modules) {
for (let extension in modules) {
module[type](extension, modules[extension]);
}
}
Inside my main module file, I turn on the utility and register these types of services.
// main.js
import {register} from './utils';
register(angular.module('awesomeModule'), 'service', services);
source
share