2017-09-14 2 views
0

product.service.ts Datei:Angular2 Service-Aufruf json Pfad nicht gefunden

import { Injectable } from '@angular/core'; 
import { Http , Response } from '@angular/http'; 
import { Observable } from 'rxjs/Observable'; 
import 'rxjs/add/operator/map'; 
import 'rxjs/add/operator/do'; 
import { IProduct } from './product'; 

@Injectable() 
export class ProductService { 
    private _producturl='src/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(JSON.stringify(data))); 
    } 
    } 

finden Sie das beigefügte Screenshot unten für Ordnerstruktur

aber beim Laden der Seite zeigt es mir eine Fehlermeldung: Zone Js: 2744 GET http://0.0.0.0:4200/src/products.json 404 (nicht gefunden)

enter image description here

Antwort

0

Sie benötigensparenDatei in Assets Ordner und den Zugang von dort wie dieser

export class ProductService { 
    private _producturl='./assets/products.json'; 
    constructor(private _http: Http){} 
    ......... 
} 

Wenn Sie Angular Cli verwenden, müssen Sie die JSON-Datei innerhalb Assets Ordner (parallel zur App dir) Verzeichnis halten, wie pro offizielle Dokumentation.

+1

Danke Kumpel :) es funktioniert jetzt gut –