title: Considering performance what is the best way to DI (services) in Angular?
body: <p>Option 1: Using constructor to pass each and every service</p>
  
  <pre class="lang-ts prettyprint-override"><code>constructor(private serviceA: ServiceA, public serviceB: ServiceB) {}
  </code></pre>
  
  <p>Option 2: Using <code>Injector</code> to initialize services.</p>
  
  <pre class="lang-ts prettyprint-override"><code>private serviceA;
  public serviceB;
  constructor(private injector: Injector) {
    this.serviceA = this.injector.get(ServiceA);
    this.serviceB = this.injector.get(ServiceB);
  }
  </code></pre>
  
  <p>I am developing an angular library which can extend component and services. What do you think as a best way to implement such a case.</p>