export class DslamService {
private host = window.location.host;
constructor(private http: Http) {}
getDslams() : Observable<Site[]> {
return this.http.get('http://' + this.host + '/dslam_service.php')
.map(this.extractData)
.catch(this.handleError);
}
private extractData(res: Response) {
let body = res.json();
return body.data || { };
}
private handleError (error: any) {
// In a real world app, we might use a remote logging infrastructure
// We'd also dig deeper into the error to get a better message
let errMsg = (error.message) ? error.message :
error.status ? `${error.status} - ${error.statusText}` : 'Server error';
console.error(errMsg); // log to console instead
return Observable.throw(errMsg);
}
}
そして、私の先行入力コンポーネント:
:providers: [HTTP_PROVIDERS, DslamService],
directives: [TYPEAHEAD_DIRECTIVES, CORE_DIRECTIVES, FORM_DIRECTIVES],
export class TypeaheadComponent implements OnInit {
private dslam: Site[];
constructor(private service: DslamService) {}
ngOnInit() { this.getDslams(); }
getDslams() {
this.service.getDslams()
.subscribe(
dslam => this.dslam = dslam);
}
そして、私のナビゲーターコンソールの
私はこのメッセージを持っていますあなたのサービスファイルでをチェックする
伝えるのは難しい。 Plunkerで再現できますか? –
https://plnkr.co/edit/TR5PJOrXmojoRdgVzOsb?p=catalogue – Bouazza
このPlunkerは問題を再現しません。 Plunkerの 'new'ボタンを使って適切な基本Angular2 TSプロジェクトを得ることができます。 –