Цитата:
|
класс которого запрятан внутри Ангуляра
|
Не понимаю о чем вы. Это же Open Source. Никто никуда ничего не прятал. А всё дело в том, что HttpHandler это некий абстрактный класс (а создавать напрямую объекты абстрактного класса нельзя)
с абстрактным методом handle. И этот самый метод реализуется в унаследованном классе -
HttpXhrBackend
Цитата:
|
Как заставить это работать
|
import {HttpClient, HttpXhrBackend, XhrFactory} from '@angular/common/http';
class BrowserXhr implements XhrFactory {
constructor() {}
build(): any { return <any>(new XMLHttpRequest()); }
}
@Component({
selector: 'app',
templateUrl: './app.component.html'
})
export class AppComponent implements OnInit {
getData(){
return new HttpClient(new HttpXhrBackend(new BrowserXhr())).get('/url').subscribe();
}
https://plnkr.co/edit/ifwNLrlNUu2s39Dfqk70?p=preview
Цитата:
|
и почему это работает, если использовать HttpClient стандартно через this компонента?
|
Ну очевидно же, что разработчики ангуляра
сделали всё за вас.