import { Injectable } from '@angular/core';
import { Http, Response } from '@angular/http';
import { Observable } from 'rxjs/Observable';
// format of Product Interface so typing mistakes will be avoided
import { IProduct } from './product';
@Injectable()
export class ProductService {
private _productUrl = 'api/products/products.json';
constructor(private _http: Http){
}
getProducts(): Observable<IProduct[]> {
return this._http.get(this._productUrl)
.map((response: Response) => <IProduct[]>response.json())
.do(data => console.log("All: " + JSON.stringify(data)))
.catch(this.handleErrors);
}
private handleErrors(error: Response){
console.log('Error: ' + error);
return Observable.throw(error.json().error || 'Server Error');
}
}
注射進口的文件的頂部,但在Chrome開發工具得到錯誤的特性「注射」 檢查下面無法讀取未定義角
您正在被錯誤信息誤導,似乎錯誤是在產品list.component –
引起不知道這是否是顯著,但嘗試刪除@Injectable和出口之間的空白行... – JGFMK
服務代碼看起來不錯。問題很可能出現在您的組件中(該長度相關的是提示)。你能提供更多的組件代碼嗎? –