| Defined in: | packages/ember-runtime/lib/inject.js:4 |
|---|---|
| Module: | ember |
Defined in packages/ember-runtime/lib/controllers/controller.js:31
Creates a property that lazily looks up another controller in the container. Can only be used when defining another controller.
Example:
App.PostController = Ember.Controller.extend({
posts: Ember.inject.controller()
}); This example will create a posts property on the post controller that looks up the posts controller in the container, making it easy to reference other controllers. This is functionally equivalent to:
App.PostController = Ember.Controller.extend({
needs: 'posts',
posts: Ember.computed.alias('controllers.posts')
}); Defined in packages/ember-runtime/lib/system/service.js:5
Creates a property that lazily looks up a service in the container. There are no restrictions as to what objects a service can be injected into.
Example:
App.ApplicationRoute = Ember.Route.extend({
authManager: Ember.inject.service('auth'),
model() {
return this.get('authManager').findCurrentUser();
}
}); This example will create an authManager property on the application route that looks up the auth service in the container, making it easily accessible in the model hook.
© 2017 Yehuda Katz, Tom Dale and Ember.js contributors
Licensed under the MIT License.
https://emberjs.com/api/ember/2.15/classes/Ember.inject/methods