当前位置: 首页 > 面试题库 >

Angular 5 Service读取本地.json文件

孔驰
2023-03-14
问题内容

我正在使用Angular 5,并且已经使用angular-cli创建了服务

我想要做的是创建一个为Angular 5读取本地json文件的服务。

这就是我所拥有的…我有点卡住了…

import { Injectable } from '@angular/core';
import { HttpClientModule } from '@angular/common/http';

@Injectable()
export class AppSettingsService {

  constructor(private http: HttpClientModule) {
    var obj;
    this.getJSON().subscribe(data => obj=data, error => console.log(error));
  }

  public getJSON(): Observable<any> {
    return this.http.get("./assets/mydata.json")
      .map((res:any) => res.json())
      .catch((error:any) => console.log(error));

  }

}

我该如何完成?


问题答案:

首先,你必须注入HttpClient和不HttpClientModule,你必须删除第二件事.map((res:any) => res.json()),你将不再需要它了,因为新HttpClient会给你默认响应的身体,最后确保你输入HttpClientModule你的AppModule

import { HttpClient } from '@angular/common/http'; 
import { Observable } from 'rxjs';

@Injectable()
export class AppSettingsService {

   constructor(private http: HttpClient) {
        this.getJSON().subscribe(data => {
            console.log(data);
        });
    }

    public getJSON(): Observable<any> {
        return this.http.get("./assets/mydata.json");
    }
}

将此添加到您的组件:

@Component({
    selector: 'mycmp',
    templateUrl: 'my.component.html',
    styleUrls: ['my.component.css']
})
export class MyComponent implements OnInit {
    constructor(
        private appSettingsService : AppSettingsService 
    ) { }

   ngOnInit(){
       this.appSettingsService.getJSON().subscribe(data => {
            console.log(data);
        });
   }
}


 类似资料:
  • 问题内容: 如何使用JQuery.getJSON()读取当前目录中的文件? 我正在尝试一些简单的操作(将data.json文件与html文件放在同一目录中): 我得到错误: XMLHttpRequest无法加载file:/// C:/Projects/test/data.json。Access-Control-Allow- Origin不允许使用Origin null。 我尝试了各种路径组合,但似

  • 我试图通过创建一个函数来编写一个简单的文本文件阅读器,该函数接受文件的路径并将每行文本转换为char数组,但它不起作用。 这里出了什么问题? 从以前的修订版更改了一点代码后,这似乎仍然不起作用,现在它给我一个异常101。 我在Firefox上测试过这个功能,它可以工作,但在Google Chrome上它就是不工作,它一直给我一个异常101。我如何让它不仅适用于Firefox,还适用于其他浏览器(尤

  • 问题内容: 我正在尝试通过创建一个接受文件路径并将文本的每一行转换为char数组的函数来编写一个简单的文本文件阅读器,但是它不起作用。 这是怎么了? 从先前的版本中稍稍更改了代码后,这似乎仍然不起作用,现在给了我一个例外101。 我已经在Firefox上对其进行了测试,并且可以工作,但是在Google Chrome中它却无法工作,并且一直给我一个异常101。如何使它不仅可以在Firefox上而且还

  • 问题内容: 我已经在本地系统中保存了一个JSON文件并创建了一个JavaScript文件,以便读取JSON文件并打印出数据。这是JSON文件: 假设这是JSON文件的路径:。 有人能帮我写一个简单的代码来读取JSON文件并以JavaScript打印数据吗? 问题答案: 由于使用HTTP发出请求,因此您 无法 对本地资源进行AJAX调用。 一种解决方法是运行本地Web服务器,提供文件并对localh

  • 本文向大家介绍Java读取本地json文件及相应处理方法,包括了Java读取本地json文件及相应处理方法的使用技巧和注意事项,需要的朋友参考一下 如下所示: json文件 以上这篇Java读取本地json文件及相应处理方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持呐喊教程。