Стандартный пример внедрения зависимостей выглядит так:
import { Component, OnInit } from '@angular/core';
import { HttpClient } from '@angular/common/http';
@Component({
selector: 'app',
providers: [ HttpClient ],
templateUrl: './app.component.html'
})
export class AppComponent implements OnInit {
constructor(
private http: HttpClient
) {}
getData(){
return this.http.get('/url');
}
Зачем такое усложнение, если достаточно одних ES6-модулей? Особенно это касается внедрения сервисов, которые представляют сообой, по-сути, объекты с методами или функции?
import { Component, OnInit } from '@angular/core';
import { HttpClient } from '@angular/common/http';
@Component({
selector: 'app',
templateUrl: './app.component.html'
})
export class AppComponent implements OnInit {
getData(){
return HttpClient.get('/url'); //в крайнем случае new HttpClient().get('/url');
}