2016-10-10 3 views
1

Dieser Code auf angular2 v.2.0.0 arbeitet .rc.2 aberangular2 rxjs .map does't Arbeit in Version 2.0.1

app.appcomponent.ts auf angular2 v2.0.1 does't

import { Component, OnInit } from "@angular/core"; 
import { Injectable } from '@angular/core'; 
import { Http, Response, URLSearchParams } from "@angular/http";  
import { IFood } from "./food"; 
import { Headers, RequestOptions } from "@angular/http"; 

Ich kann dies für die Verwendung importieren .map oder?

import { Observable } from 'rxjs/Observable'; 
import 'rxjs/add/operator/map'; 
import 'rxjs/add/operator/toPromise'; 
import 'rxjs/add/operator/catch'; 

@Component({ 
selector: "my-app", 
template: ` 
    <h1>My First Angular 2 App</h1> 
     <ul *ngFor='let food of foods'> 
      <li>{{food.foodName}}</li> 
     </ul> 
    `, 
templateUrl: "./app/form.html" 
}) 

@Injectable() 
export class AppComponent implements OnInit { 
public values: string[]; 
public headers: Headers; 
errorMessage: string; 

Ich habe eine Liste von Lebensmitteln in meinem Controller, foodid, foodname

foods: IFood[]; 
foodModel = <IFood>{}; 

constructor(private http: Http) { 
    this.http = http; 
    this.headers = new Headers(); 
    this.headers.append("Content-Type", "application/json"); 

    } 

ngOnInit() { 
    return this.http.get("/home/getdata") 

gibt es .map does't Arbeit können wir in angular2 2.0.1 nicht verwenden .map?

 .map((response: Response) => <IFood[]>response.json()) 
     .subscribe(data => this.foods = data, error => 
      this.errorMessage = <any>error); 
}  
} 

Muss ich Dienste erstellen? Wie dies zu beheben, danke

+1

Versuchen mit 'Import‚rxjs/Rx'' wird es alle Symbole laden. – micronyks

+0

Ich versuche das aber nicht zu arbeiten. Alert 'map' existiert nicht für den Typ 'Observable ' –

+0

Versuchen Sie, es vor Observable zu importieren, oder verschieben Sie die Operatorimporte in das Stamm-NgModule. – Sasxa

Antwort

0

Versuchen Aktualisierung Typoskript 2.0.3

Das ist für mich das Problem gelöst.

Und stellen Sie sicher, dass Sie ECMAScript 6 verwenden

Verwandte Themen