Создал простенький сервис на Angular2.
Никак не могу понять как проинжектить в него Http
import {Injectable} from 'angular2/core';
import {Http, Headers, RequestOptions} from 'angular2/http';
import 'rxjs/Rx';
@Injectable()
export class Test{
constructor(_http: Http) {
this._http = _http;
}
getData = function() {
let headers = new Headers({ 'Content-Type': 'application/json' });
let options = new RequestOptions({ headers: headers });
return this._http.post('http://127.0.0.1:8085/', '{blabla}', options)
.map(DATA => DATA.json());
}
}
Ошибка
cannot read property post of undefined
Хотя в компоненте этот код работает на ура:
import {Component} from 'angular2/core';
import {Http, HTTP_PROVIDERS, Headers, RequestOptions} from 'angular2/http';
import 'rxjs/Rx';
@Component({
selector: 'my-app',
templateUrl: 'app/app.component.html',
styleUrls: ['app/app.component.css'],
viewProviders: [HTTP_PROVIDERS],
})
export class AppComponent{
constructor(http: Http) {
let headers = new Headers({ 'Content-Type': 'application/json' });
let options = new RequestOptions({ headers: headers });
http.post('http://127.0.0.1:8085/', '{blabla}', options)
.map(DATA => DATA.json()).subscribe(DATA => {
this.Test = DATA.data;
}
}
}