We took a little deep dive into DI in the previous section, but almost forgot about a very important decorator, @Injectable. @Injectable is not strictly mandatory to use for services in general. However, if that service has dependencies, then it needs to be used. Failure to decorate a service with @Injectable that has dependencies leads to an error where the compiler complains that it doesn't know how to construct the mentioned service. Let's look at a case where we need to use the @Injectable decorator:
import { Injectable } from '@angular/core';@Injectable() export class Service { constructor(logger:Logger) {}}
In this case, Angular's DI machinery will look up Logger and inject it into the ...