动态将var分配给json

时间:2018-06-29 13:11:52

标签: json angular rxjs

我在.ts文件中有一个变量var locations,希望它等于同一文件夹中的json对象。换句话说,.json文件每5秒更改一次,我需要更新变量。我认为他的rxjs可以观察到是他们要走的路。我尝试过

ngOnInit() {
    timer(0, 7000).pipe(
      switchMap( _ => this.hawkerservice.fetchNews()
    )).pipe(
      map((ret:any) => {
       this.locations = ret 
      })
    ).subscribe();
  }

现在,除了.fetchNews() pull通过以下端口外,此方法工作良好:

export class MapjsonService{
  theUrl = 'http://localhost:8000/locations.json';
  constructor(private http: HttpClient) { }

  fetchNews(): Observable<any>{
    return this.http.get(this.theUrl)
  }

}

所以我的问题是在不通过端口传递json对象的情况下执行此操作的最佳方法是什么?即,仅在本地获取它。

thx

1 个答案:

答案 0 :(得分:1)

就这么简单。您的文件只是另一资源,位于locallyserver上。您确实需要http来访问它,因为它是托管的。

与您的观点相反,即使托管application,也不能不使用http来简单地运行locally。同样适用于json文件。 您需要http才能访问文件。