Angular2が新しく、JSONファイルからデータをロードしたい。 AngularIO Articleを読んでチュートリアルをやったが、まだ助けが必要だ。 データを取得するapiServiceと、apiServiceからデータを取得するコンポーネントに「取得するデータ」を分割しました。Angular2観測可能なHTTPデータが埋め込まれていない
この質問のために、私はapiServiceなしでコンポーネントに直接データをロードしたいと思っています。
これはコンポーネントです:
export class StatusComponent implements OnInit {
private status = {};
private error: string;
constructor(private router: Router, private variables: Variables, private apiService: ApiService, private http: Http) {
if (!this.variables.getIsLoggedIn()) {
this.router.navigate(['login']);
}
}
ngOnInit() {
this.getStatus();
}
getStatus() {
this.http.get('../app/apiFiles/status.json')
.map((res:Response) => res.json())
.subscribe(
data => { this.status = data},
err => console.error(err),
() => console.log('done')
);
console.log(JSON.stringify(this.status));
}
}
これはJSONです:コンポーネントで
{
"status": {
"timercount": "0",
"reccount": "0"
}
}
、getStatus()
が正しくロード、およびエラーなしに経由ですが、変数iがstatus
を埋めます満たされていません。 の後に変数はまだ{}
です。 さらに、console.log(JSON.stringify(this.status));
の出力は{}
です。
誰かが私を助けて解決することを願っています! ありがとう!
おかげで、ない、これは解決策ではありませんでした。/ – Junias
解決策は 'this.status = data.status'を使用することでしたが、データはロードされました...;) 大変ありがとうございます! – Junias