Inject Ember service from subfolder

Viewed 588

My current ember project is structured like this:

+-- app
| services 
|   +-- service1.js
|   |   subfolder
|   |   +-- service2.js

I have a service (service1.js) just in the root of the services folder. I can perfectly inject that into a controller like this:

    service: Ember.inject.service("service1"),

But I want some more structure in my services folder. I want to put a service (service2.js) in a subfolder ('subfolder').

How do I inject this into my controller.js/component.js? If I write down:

service: Ember.inject.service("subfolder/service2") or
service: Ember.inject.service("subfolder.service2"),

This doesn't work

Attempting to inject an unknown injection

How can I inject a service from a subfolder into my controller/component/etc ?

2 Answers

And in 2021 these days with ember.js Glimmer/Octane:

import { inject as service } from '@ember/service';
export default class UserPlannerBasketOnlyController extends Controller {
     @service('tkc/rangemappings-tkc') rangemappings;
}
Related