[英]how to access to an array of array (JSON) with angular2
i have this JSON response 我有这个JSON响应
places":[{"libPlace":"Le Colis\u00e9e","idPlace":1},[{"dateEventPlace":"2017-03-19T08:09:00+0000"},{"dateEventPlace":"2017-03-19T14:19:00+0000"},{"dateEventPlace":"2017-03-24T14:08:00+0000"}],{"libPlace":"ABC","idPlace":2},[{"dateEventPlace":"2017-03-22T14:10:00+0000"},{"dateEventPlace":"2017-03-24T16:20:00+0000"}]]
i want to get something like that (i'm using Angular2) 我想得到类似的东西(我正在使用Angular2)
libPlace : 2017-03-19T08:09:00+0000
2017-03-19T08:09:00+0000
2017-03-19T08:09:00+0000
i've tried this and it returns just the "libPlace" values 我试过了,它只返回“ libPlace”值
<div *ngFor="let place of places " class="day clearfix"> {{place.libPlace}} <div *ngFor="let times of place "> {{times?.dateEventPlace}} </div> </div>
here is my component.ts 这是我的component.ts
places: any[];
ngOnInit(){
this.route.params
this.route.params
.switchMap((params: Params) =>{
return this.movieService.getPlaces(+params['id']);
})
.subscribe((places: any) => {this.places = places;
});
i also tried to send this to angular2 and ignore duplicates using a pipe or the _groupBy (from _Underscore.js) but still it didn't work with me 我也尝试将其发送到angular2,并使用管道或_groupBy(来自_Underscore.js)忽略重复项,但仍然无法使用
"places":[{"libPlace":"Le Colis\u00e9e","idPlace":1,"dateEventPlace":"2017-03-19T08:09:00+0000"},{"libPlace":"Le Colis\u00e9e","idPlace":1,"dateEventPlace":"2017-03-19T14:19:00+0000"},{"libPlace":"Le Colis\u00e9e","idPlace":1,"dateEventPlace":"2017-03-24T14:08:00+0000"},{"libPlace":"ABC","idPlace":2,"dateEventPlace":"2017-03-15T07:13:00+0000"},{"libPlace":"ABC","idPlace":2,"dateEventPlace":"2017-03-22T14:10:00+0000"},{"libPlace":"ABC","idPlace":2,"dateEventPlace":"2017-03-24T16:20:00+0000"}]}
to do what you whant to do, your json is totally wrong, it should be : 做你想做的事情,你的json是完全错误的,应该是:
places":[
{
"libPlace":"Le Colis\u00e9e",
"idPlace":1,
"times":[
{"dateEventPlace":"2017-03-19T08:09:00+0000"},
{"dateEventPlace":"2017-03-19T14:19:00+0000"},
{"dateEventPlace":"2017-03-24T14:08:00+0000"}
]
},
{
"libPlace":"ABC",
"idPlace":2,
"times":[
{"dateEventPlace":"2017-03-22T14:10:00+0000"},
{"dateEventPlace":"2017-03-24T16:20:00+0000"}
]
}
]
And the second for loop should be *ngFor="let times of place.times". 第二个for循环应为* ngFor =“ let times of place.times”。
In your json, times are not in the same object than the libplace so there is no match between your libplace and the times. 在您的json中,时间与libplace不在同一个对象中,因此libplace与时间之间没有匹配。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.