2017-09-14 44 views
0

product.service.ts文件:Angular2服务调用JSON路径

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))); 
    } 
    } 

请找到文件夹结构

下面所附截图,但是当页面加载它显示了我一个错误: 区.js文件:2744 GET http://0.0.0.0:4200/src/products.json 404(未找到)

enter image description here

回答

0

您需要保存json文件夹的资产,并获得从那里像这样

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

如果你采用了棱角分明CLI中,您需要保持资产文件夹内的JSON文件(平行于应用程序目录)目录按照官方的文档。

+1

感谢哥们:)现在工作正常 –