Solución:
Se “mencionó” un poco en el tutorial de ToH, en la parte “Manejo de errores” en el capítulo HTTP. Pero no estaba realmente claro que necesitara agregar esta parte del código a su archivo “hero.service.ts” (al menos si tiende a no leer completamente el texto):
private handleError(error: any): Promise<any> {
console.error('An error occurred', error); // for demo purposes only
return Promise.reject(error.message || error);
}
Lo agregué al final dentro de la clase HeroService y todo funcionó. Espero que también funcione para ti :).
La propiedad ‘handleError’ no existe en el tipo ‘HeroService’
Las funciones también son propiedades.
getHeroes(): Promise<Hero[]> {
return this.http.get(this.heroesUrl)
.toPromise()
.then(response => response.json().data as Hero[])
.catch(this.handleError); <=== Where is this? Not in HeroService
}
Necesitas definir un handleError
método en el HeroService
clase
handleError(error) {
// do something with error
}
Parece que te perdiste esta parte del tutorial 🙂
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)