我正在使用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后打印()调用,它没有新的变化?