import { Headers, Http } from '@angular/http';
@Injectable()
export class PublisherService{
private publishersUrl = 'app/publisher';
constructor(private http: Http) { }
getPublishers(): Promise<Publisher[]>{
return this.http.get(this.publishersUrl)
.toPromise()
.then(response => response.json().data)
.catch(this.handleError);
}
}
I am getting this error:
Property 'toPromise' does not exist on type 'Observable'.any
You need to add the operator like this:
import 'rxjs/add/operator/toPromise';
This is needed for every rxjs operator you want to use.
Try adding 'Response' to your import statement from '@angular/http' like this :
import {Http, Headers, Response} from '@angular/http';
Also i noticed you don't import Ingectable from angular core although you use @Injectable decorator.
import { Injectable } from '@angular/core';
use this import at the beginning
import {Observable} from "rxjs/Rx";
Success story sharing