2017-08-11 6 views
1

Je suis très nouveau dans Angular2/4 et j'ai un problème en essayant de suivre ce tutoriel concernant PrimeNG:Pourquoi j'obtiens cette erreur dans une application Angular? Propriété 'toPromise' n'existe pas sur le type 'Observable <Response>'

https://www.primefaces.org/primeng/#/schedule

J'ai créé le EventService classe dans un fichier dans mon prohject, de cette façon:

import {Injectable} from '@angular/core'; 
import {Http} from '@angular/http'; 

@Injectable() 
export class EventService { 

    constructor(private http: Http) {} 

    getEvents() { 
    return this.http.get('showcase/resources/data/scheduleevents.json') 
     .toPromise() 
     .then(res => <any[]> res.json().data) 
     .then(data => { return data; }); 
    } 
} 

le probl em est que WebStorm me donne une erreur sur la toPromise() méthode, il est dit:

Error:(11, 8) TS2339:Property 'toPromise' does not exist on type 'Observable<Response>'. 

Pourquoi? Ce que cela veut dire? Quel est le problème? Comment puis-je essayer de le réparer?

+1

double possible de [la propriété 'toPromise' n'existe pas sur le type 'Observable '] (https://stackoverflow.com/questions/38090989/ property-topromise-does-not-exists-on-type-observableresponse) – Alex

+1

Combien de temps avez-vous passé à écrire cette question, vous auriez peut-être dû simplement googler le message d'erreur et trouver une réponse? ;) – Alex

Répondre

2

Vous devez importer l'opérateur comme ceci:

import 'rxjs/add/operator/toPromise';