我在通用环境中使用angular,但是页面加载了两次,第一个没有api数据,第二个已经加载了它们]]
有人知道如何解决此问题吗?
这是我向API发出请求的方式
getPagination(event, red=false) { if(red){ this.router.navigate(['/eventos/'+event]); }else{ this.events = new Array(); this.loading = true; this.p=event; //if (this.events.length < this.totalEvents) { const filter = "ordering=startDate&items=" + this.pageSize + "&page=" + event; let urlfilter = ''; for (let filter in this.filters) { if(this.filters[filter] != ''){ urlfilter += '&'+filter+'='+this.filters[filter]; } } this.api.getEvents(filter + urlfilter).subscribe(res =>{ this.totalEvents = res['count']; this.events = res['results']; this.loading = false; }, err=>{ this.loading = false; }) //} } }
这是我在API服务中的方法
getEvents(where?: string): Observable<any> {
where = (where) ? '?' + where : '';
return this.http.get(this.apiUrl + `events/${where}`)
.pipe(map(res => res), catchError(this.handleError));
}
我在通用环境中使用angular,但是页面加载了两次,第一个页面没有api数据,第二个页面已经加载了api有人知道如何解决此问题吗?这个...
取决于所使用的版本,可以使用不同的方法来使用TransferState API。一旦您进入Angular 7,它就会变得非常容易。