Suppose that I have the following class:
export class Teacher {
constructor( public name: String, private age: number ){}
...
}
Teacher
s are created like this:
const firstGradeTeacher: Teacher = new Teacher("Hannah", 32);
I want to add a logger to the teacher now. The logger is Injectable()
. My first line of thinking was to do this:
export class Teacher {
constructor( public name: String, private age: number, private logger: Logger ){}
...
}
Unfortunatly, this means that now everyone that constructs a teacher needs to either:
Have a logger or
Know how to construct a logger
What I would reallly like to do is this:
export class Teacher {
private logger: Logger = Injector.get(); // <-- Does this exist?
constructor( public name: String, private age: number){}
...
}
Is there a way that I can do this?