Способы внедрения услуг в компонент? - PullRequest
1 голос
/ 21 июня 2019

В настоящее время я делаю инъекцию через конструктор, как показано ниже, есть ли другой способ внедрить сервис в компонент всякий раз, когда мне нужно, вместо инъекции в конструктор

export class AppService { 
  private users: User[] = []; 
  constructor( private backend: BackendService, private logger: Logger) { } 
}

1 Ответ

3 голосов
/ 21 июня 2019

Мы можем внедрить Injector angular в качестве зависимости и использовать его для внедрения наших услуг в качестве зависимости всякий раз, когда это требуется, как показано ниже,

import { Injector } from '@angular/core';
export class AppService { 
 private users: User[] = [];
 constructor( private injector: Injector, private logger: Logger) { } 
 someMethod() {

  let backendService: BackEndService = this.injector.get(BackEndService);
  ....

  }
} 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...