Injectable

Decorator that marks a class as available to be provided and injected as a dependency.

@Injectable()
class UsefulService {
}

@Injectable()
class NeedsService {
  constructor(public service: UsefulService) {}
}

const injector = Injector.create({
  providers: [
    {provide: NeedsService, deps: [UsefulService]}, {provide: UsefulService, deps: []}
  ]
});
expect(injector.get(NeedsService).service instanceof UsefulService).toBe(true);

Injectable — Structure map

Clickable & Draggable!

Injectable — Related pages: