私は、http get要求を使用してjsonオブジェクト配列を取得しようとしています。現在、私はevent.serviceコンポーネントのgetEvents()を呼び出すlist-view.componentを持っています。この関数はオブジェクト配列を表すPromiseを返します。更新された配列はlist-view.componentに正常に返されますが、何らかの理由でコンソールで配列を出力しようとしたときに変更が反映されません。オブジェクトの配列が変更された場合、角2 ngForは更新されません。
リスト-view.component.ts
this.eventService.getEvents(lat, lon, range, s).then(events => this.eventsList = events);
console.log(this.eventsList);
event.service.ts
getEvents(lat: number, lon: number, radius: number, s: string): Promise<Event[]> {
return this.http.get(this.eventsUrl + "?s=" + s +"&radius=" + radius + "&lat=" + lat + "&lon=" + lon)
.toPromise()
.then(response => response.json() as Event[])
.catch(this.handleError);
}
私は以下のように、.then方法で配列を印刷しようとした場合、それが正しく、それを印刷します。
this.eventService.getEvents(lat, lon, range, s).then(events => console.log(events));
どのように私はthis.eventService.getEvents()呼び出しの後に、それを印刷しようとすると、それは新しい変更を持っていない、来ますか?