Suscribirse a observable está regresando indefinido
Así que estoy tratando de suscribirme a un servicio simple que devuelve datos de un archivo JSON local.
He logrado que el servicio funcione, puedo cerrar sesión en la función, pero cuando me suscribo al servicio en el componente angular 2, siempre está indefinido. No estoy seguro por qué Cualquier ayuda sería muy apreciada.
Servicio API
export class ApiService {
public data: any;
constructor(private _http: Http) {
}
getData(): any {
return this._http.get('api.json').map((response: Response) => {
console.log('in response', response.json()); //This logs the Object
this.data = response.json();
return this.data;
})
.catch(this.handleError);
}
}
Componente
export class AppComponent {
public data: any
public informationData;
constructor(private _api: ApiService) {}
public ngOnInit(): void {
console.log(this.getDataFromService()); // This return undefined
}
public getDataFromService() {
this._api.getData().subscribe(response => {
this.informationData = response;
return this.informationData;
});
}
}