繁体   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