Angular2-TypeError: esto.http.conseguir(…).toPromise no es una función


Trato de seguir el tutorial en angular.io (Gira a los Héroes) Pero en lugar de tutorial trato de hacer real OBTENER solicitud en algunos JSON.

Mi código se ve como:

  private userUrl = 'https://jsonplaceholder.typicode.com/users';
  constructor(private http: Http) {}

  getUsersHttp(): Promise<User[]> {
    return this.http.get(this.userUrl)
      .toPromise()
      .then(response => response.json().data as User[])
      .catch(this.handleError);
  }

Para el servicio importo solo algunas cosas básicas:

import { Injectable }     from '@angular/core';
import { Headers, Http, Response } from '@angular/http';
import { User } from './user';

Donde user.ts es básicamente copia de heroe.ts en TOH so:

export class User {
  id: number;
  name: string;
}

Cómo llamo a este método específico en servicio: Primero intento varias cosas, pero mientras depuro intento solo consola.log it so:

 console.log(this.userService.getUsersHttp());

Cuando la página se está cargando consola he encontrado varios errores: La primera es:

EXCEPTION: TypeError: this.http.conseguir(...).toPromise no es una función

El segundo es:

EXCEPTION: TypeError: this.http.conseguir(...).toPromise no es un functionBrowserDomAdapter.logError @

Service it self se ve bien. He añadido mi servicio a app.module.ts en esta línea:

providers: [ HTTP_PROVIDERS, UserService ]

Y funciona si devuelvo datos directamente con alguna función como (y comento llamando getUsertHttp función):

  getUsers() {
    return [{'id': 1, 'name': 'User1'}, {'id': 2, 'name': 'User2'}];
  }

Trato de describir todo lo que puede ser importante, lo siento si la pregunta es un poco larga. Por favor, chicos, ¿pueden darme una pista de lo que estoy haciendo mal?

Author: Andurit, 2016-08-24

1 answers

Parece que le falta importar:

import 'rxjs/add/operator/toPromise';

 78
Author: Stefan Svrkota,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-08-24 10:53:43