Winkel-5 - 'json nicht existiert auf dem Typ Object'

Bin ich nach einem einfachen Leitfaden und zur änderung der es leicht für meine Bedürfnisse - Aber ich habe endlich einen Haken über mapping und subscribing

https://www.sitepoint.com/mean-stack-angular-2-angular-cli/ - Dies ist die Anleitung, und alles funktioniert, bis ich gehen Sie zum erstellen der app nach der Erstellung der List Service.

Ich habe ein paar änderungen durch Eckige 5 wie der Austausch mit HttpClient, aber nichts außergewöhnliches.

Meinem jetzigen Problem fällt auf, dass diese 2 Funktionen:

  public getAllTasks():Observable<Task[]> {
    let URI = `${this.serverApi}/tasks/`;
    return this.http.get(URI)
      .map(res => res.json())
      .map(res => <Task[]>res.tasks);
  }



  public deleteTask(taskId : string){
    let URI = `${this.serverApi}/tasks/${taskId}`;
    let headers = new HttpHeaders;
    headers.append('Content-Type', 'application/json');
    return this.http.delete(URI,  {headers})
      .map(res => res.json());

  }

Sogar meine IDE sagt mir, dass

  .map(res => res.json())

funktionieren nicht im entweder-Funktion, nämlich: Property 'json' does not exist on type 'Object'.

Ich gesucht habe ein bisschen herum und fand einige ältere post mit Vorschlägen, wie Sie es ändern werden

  .map((res: Response) => res.json())

aber ich hatte einen sehr ähnlichen Fehler

A function whose declared type is neither 'void' nor 'any' must return a value.

Mein Modell ist:

export interface Task {
  _id?: string;
  title: string;
  description: string;
  category: string;
}

Ursprünglich war dies eine Klasse, aber ich habe es geändert, um eine Schnittstelle, wie empfohlen wurde. Ich bin mir nicht sicher, ob es verwandt ist.

Nicht sicher, ob es ist relativ, aber die Komponente-Seite, es ist:

 ngOnInit() {
    this.loadTasks();
  }

  public loadTasks() {

    this.taskServ.getAllTasks().subscribe(
      response => this.tasks = response,
    )
  }

Ich nehme an, dies ist einige Verwirrung, die ich mit, wie map funktioniert oder was es erwartet. Jeder Eingang würde sehr geschätzt.

Update

Winkel - res.json() ist keine Funktion

Wie erwähnt, in diesem post, es scheint, dass HttpClient systemeigen res im JSON-Format, also eigentlich das löschen dieser Zeilen entfernt, die Fehler. Ich werde meine komplette Lösung, wenn ich es bewiesen out.

InformationsquelleAutor DNorthrup | 2017-11-30
Schreibe einen Kommentar