我从openweather api获得了一个对象,该对象具有40个对象的数组,天气预报5天,间隔3小时。我在我的angular 2应用中无法显示这5天的预测。我需要按天过滤此数据,并在角度模板中显示这5天的预测,并显示日期,天,预测。我附上了从openweather api获取的对象的屏幕截图
这是我的ts文件代码,用于获取该对象:
this.weatherService.loadCFiveDay(data.lat, data.lon)
.subscribe(data=>{
data.list.forEach(item => {
}
}
最佳答案
您可以为此编写一个管道以按日期循环:
@Pipe({
name : 'filterByDate',
pure : false
})
export class FilterByDatePipe implements PipeTransform {
transform(items : any[], filterDate : number) : any {
if (!items || !items.length || !filterDate)
return items;
return items.filter(item => new Date(item.dt).getDate() === filterDate);
}
}
然后在您看来,执行以下操作:
<div *ngFor="let filteredDate of myServiceData.list | filterByDate:22">
<!-- everything here will now be filtered by the date of 22nd, so you can do things like -->
<p>Today's weather - <span>{{ filteredDate.weather[0].description }}</span></p>
</div>
也许有一种更优雅的方法,但这应该可以帮助您入门。
关于javascript - 在angular 2应用程序中从openweather api检索数据,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44120544/