我正在使用http獲取請求獲取json對象數組。目前,我有一個list-view.component在我的event.service組件中調用一個函數getEvents()。該函數返回Promise,它代表對象數組。它成功地將更新後的數組返回給list-view.component,但由於某種原因,當我嘗試在控制檯上打印數組時,它不顯示更改。當對象數組發生變化時,Angular 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);
}
如果我嘗試打印數組中。於是方法,如下面,它正確打印它。
this.eventService.getEvents(lat, lon, range, s).then(events => console.log(events));
怎麼來的,當我嘗試this.eventService.getEvents後打印()調用,它沒有新的變化?