Ich versuche eine Anfrage von einer externen API in Winkel 2 zu machen. Ich möchte die Datenanforderung in 2 Dateien verwalten und das Ergebnis als json anzeigen.HTTP Request Angular 2
sieht Meine Daten-Ausgabe-Komponente wie folgt aus:
import {Component} from '@angular/core'
import {DataService} from './datavisualisation.service'
@Component({
selector: 'app-datavisualisation-output',
template: `
`
})
export class DatavisualisationOutput {
constructor(dataservice: DataService) {
dataservice.data
.subscribe(
data => this.data = data,
console.error,
() => console.log('Look at this:' + data)
);
}
}
Meine zweite Datei für den Dienst wie folgt aussieht:
import { Injectable } from '@angular/core';
import { Http } from '@angular/http';
import 'rxjs/add/operator/map';
@Injectable()
export class DataService {
constructor(http:Http) {
this.data = http.get('http;//...API')
.map(response => response.json());
}
}
... aber die Konsole zeigt folgende Fehlermeldung:
components/datavisualisation/dataservices/datavisualisation.output.service.ts:12:26
Property 'data' does not exist on type 'DataService'.
components/datavisualisation/dataservices/datavisualisation.output.service.ts:14:29
Property 'data' does not exist on type 'DatavisualisationOutput'.
components/datavisualisation/dataservices/datavisualisation.output.service.ts:16:43 Cannot find name 'data'.
components/datavisualisation/dataservices/datavisualisation.service.ts:8:13
Property 'data' does not exist on type 'DataService'.
Was mache ich hier falsch?
export class DatavisualisationOutput {
public data: any; //this one
constructor(dataservice: DataService) {
dataservice.data
.subscribe(
data => this.data = data,
console.error,
() => console.log('Look at this:' + data)
);
}
}
und auf DataService
: