关于SO的解决方案很少,但显然它们已被弃用。 Angular 2一直在变化......
我试图将json文件提取到我的文件中。
有items.json
个文件。
我想知道我是否能够在一个文件中完成这项工作?我的意思是,就在app.component.ts
内? app.component.ts
文件实际上看起来像:
import { Component } from '@angular/core';
import { Http } from '@angular/http';
import { Injectable } from '@angular/core';
@Component({
templateUrl: './app.component.html',
styleUrls: ['./app.component.css']
})
@Injectable()
export class AppServices{
constructor(private http: Http) {
let obj;
this.getJSON().subscribe(data => obj=data, error => console.log(error));
}
public getJSON(): {
return this.http.get("./items.json")
.map((res:any) => res.json())
}
}
export class AppComponent {
let items = getJSON();
}
}
或者我必须包含app.service.ts
个文件?然后放下获取json的代码?在Angular1中这么容易,为什么他们这么复杂......
我正在寻找最短的解决方案我会赞成每一个答案。提前谢谢你
修改 我有另一个代码:
import { Component } from '@angular/core';
import { Http } from '@angular/http';
@Component({
selector: 'watchlist',
templateUrl: './watchlist.component.html',
styleUrls: ['./watchlist.component.css']
})
export class WatchlistComponent {
data;
constructor(private http:Http) {
this.http.get('items.json')
.subscribe(res => this.data = res.json());
}
}
如何将这些数据加载到我的items变量中?
答案 0 :(得分:2)
//一个功能你可以声明一个应用
app() {
return this.http.get('/config.json');
}
this.app().subscribe((data: any) => {
}