La propriété 'toPromise" n'existe pas sur le type " Observables<Réponse>'

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);
    }
}    

J'obtiens cette erreur:

Propriété "toPromise" n'existe pas sur le type 'Observables'.tout

  • Normalement, ce n'est pas une bonne idée de convertir les phénomènes observables dans les promesses. Les phénomènes Observables sont bien plus puissants
  • Pour quelqu'un d'autre qui trébuche sur ce (c'était le top de google lien pour moi), voir ci-dessous, qui vient de l'un des sites les réponses github.com/Microsoft/TypeScript/issues/... Comme il est dit, dans Visual Studio 2015, vous pouvez résoudre ce problème en mettant à jour votre version de la machine à l'aide de microsoft.com/en-us/download/details.aspx?id=48593
InformationsquelleAutor MiHawk | 2016-06-29