ember-cli-dependency-injection-utils
A utility library for more concise dependency injection through Ember initializers.
Installation
# ember-cli > 0.2.3 ember install ember-cli-dependency-injection-utils# ember-cli <= 0.2.3 ember install:addon ember-cli-dependency-injection-utils
Usage
Below is a sample initializer file/pattern you might create. For additional info, please check out the source.
Simple example
// app/initializers/dependency-injection.js; { // Inject factory dependencies onto a specific container ; // Inject a service to in common Ember places: route, controller, view, component ;} name: 'dependency-injection' initialize ;
DRY, real world usage example
// app/initializers/dependency-injection.js; { // Register anything you need application; // Service definitions const environment = property: 'environment' injectionName: 'config:environment' ; const routing = property: 'routing' injectionName: 'service:-routing' ; const site = property: 'site' injectionName: 'service:site' ; const session = property: 'session' injectionName: 'service:session' ; const api = property: 'api' injectionName: 'service:some-api-client' ; // Inject factory dependencies, using service definitions ; ; ; // Inject these services in common Ember places ; ; ; ;} name: 'dependency-injection' initialize ;
TODO
- Formally document the methods in this
README
. - Write tests!
- Properly import lodash
Contributors
- @AO16: Original implementation