1
我從進料URL獲取項目的列表如下:顯示項目發出
getFeed(){
return Observable.interval(5000)
.mergeMap(() => this._http.get(this.feedUrl))
.map(this.extractFeeds)
.catch(this.handleError);
}
private extractFeeds(res: Response): Feed {
let feeds = res.json();
return feeds || { };
}
,這是工作的罰款。現在我想分割這些,這取決於feed[].publishedDate
;如果時間是最後的5分鐘內,然後我想組這些進入名單上有:
private latestFeeds: Feed[];
如果沒有,那麼組這些到另一個名單上有:
private olderFeeds: Feed[];
是什麼最好的辦法呢?在實際的服務中,還是通過在模板中使用*ngIf
?我的HTML看起來像這樣:
<div *ngIf="feeds">
<div *ngFor="let feed of feeds | slice:0:9">
<div class="row">
<div class="col-md-12">
<div class="search-res well">
<div>
<strong>Date Published: </strong>
{{feed.publishDate | date:'medium'}}
</div>
<a href="{{feed.link}}" target="_blank"><h4>{{feed.title}}</h4></a>
</div>
</div>
</div>
</div>
我feedComponent.ts如下
constructor(private _feedService:FeedService) { }
ngOnInit() {
this.getFeed();
}
getFeed() {
this._feedService.getFeed()
.subscribe(res => {
this.feeds = res;
})
}
感謝您的幫助和時間
我可能從兩個都開始;在組件中進行拆分,並向模板公開兩個屬性。在這種情況下顯示「最新」字段似乎是一個顯示問題。 – jonrsharpe
Im新角度。你能告訴我一個如何在代碼中執行if/else語句的例子嗎?我還在問題中添加了我的組件 – Johann