簡體   English   中英

Angular-將JSON文件部署到Firebase

[英]Angular - Deploying a JSON file to firebase

摘要

  • 我有一個角度項目,其中包含帶有模擬數據的JSON文件
  • 構建項目時,我將JSON文件粘貼到“ dist”文件夾中
  • 我有一個引用JSON文件的角度服務
  • 我部署到Firebase並收到錯誤
  • 請原諒這里缺乏知識的人

問題

  1. 在LocalHost中工作時可以使用JSON文件嗎?
  2. 我將Firebase部署到哪里做錯了什么?

服務

 import { IProjects } from './projects.interface'; @Injectable() export class ProjectsService { private _projectURL = '/dist/projects-list.json'; constructor(private _http: Http) { } getProjects(): Observable<IProjects[]> { return this._http.get(this._projectURL) .map((response: Response) => <IProjects[]> response.json()) .do(data => console.log('All: ' + JSON.stringify(data))) .catch(this.handleError); } getProject(id: number): Observable<IProjects> { return this.getProjects() .map((projects: IProjects[]) => projects.find(p => p.projectId === id)); } private handleError(error: Response) { console.error(error); return Observable.throw(error.json().error || 'Server error'); } } 

顯示項目列表的列表組件

 export class ProjectsListComponent implements OnInit { pageTitle = "Project List"; errorMessage: string; projects: IProjects[]; constructor(private _projectsService: ProjectsService) { } ngOnInit(): void { this._projectsService.getProjects() .subscribe(projects => this.projects = projects, error => this.errorMessage = <any>error); } onRatingClicked(message: string): void { this.pageTitle = 'Project List: ' + message; } } 

瀏覽器中收到錯誤 在此處輸入圖片說明

任何幫助將不勝感激 :)

您需要將您的模擬json文件添加到您的角度項目中的assets文件夾中。

你可以這樣訪問

getProjects(): Observable<IProjects[]> {
        return this._http.get("assets/projects-list.json")
            .map((response: Response) => <IProjects[]> response.json())
            .do(data => console.log('All: ' +  JSON.stringify(data)))
            .catch(this.handleError);
    }

注意:-您需要在資產文件夾中添加靜態文件,例如圖像或配置文件。 角度只能訪問資產文件夾。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM