Мне нужно позвонить в службу класса Angular:
MyService
@Injectable()
export class MyService {
constructor (private http: : HttpClient) { // HttpClient is just for the example
console.log('MyService constructor');
}
getStuff(){
}
}
MyClass
export class MyClass {
constructor(){
console.log('MyClass constructor');
}
doSomething(){
// what i want to do
return this.myService.getStuff();
}
}
На моей главной странице
let myArray: MyClass[];
myArray.push(new MyClass());
myArray.push(new MyClass());
myArray.push(new MyClass());
myArray[0].doSomething();
Добавление @Injectable в MyClass не вариант, поскольку MyClass - это реальный экземплярный класс.
Вручную создать экземпляр MyServiceне имеет смысла, так как я хочу, чтобы MyService был единичным, и я не хочу, чтобы MyClass знал, что MyService нужен HttpClient (в противном случае я бы не использовал службу).
Использование собственного инжектора в MyClass кажется излишним и приводит кта же проблема, что и при создании экземпляра MyService вручную.
Я застрял, пожалуйста, помогите