我在Angular2中编写项目,我想在其中获取JSON并检索数组中的所有rooms
。
这是我的服务,它帮助我找到正确的json文件
@Injectable()
export class RoomlistService {
constructor(private http: Http) { }
getRooms(room) {
console.log('get all rooms: ');
return this.http.get('../../assets/rooms/' + room + '.json')
.map(response => response.json());
}
}
这是我的组件,它使用此服务并获取数据
ngOnInit() {
this.routeUrl.paramMap.subscribe( (param) => {
this.buildingID = param.get('id');
this.service.getRooms(this.buildingID).subscribe(data => {
console.log(data);
});
});
}
所以,现在它工作正常,而console.log
我得到了object
我想要的是获取所有rName
并将其存储到数组中。
但我尝试的一切都没有帮助我。你能帮我解决一下吗?
答案 0 :(得分:1)
不清楚data
对象的结构与你的任务中的图像有什么关系,但我认为这样可行:
var arr = Object.keys(data).map(k => data[k].rName);
答案 1 :(得分:1)
您也可以更清洁地使用“.map”。
let roomArray = data.map(roomObject => {return roomObject.rName})