2017-12-01 23 views
0

プロジェクトをAngular2で記述します。ここで、JSONを取得し、すべて配列roomsを取得します。ここでObjectからデータを取得して配列に格納する方法

@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()); 
    } 
} 

私は右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

enter image description here

取得

私がしたいのは、すべてrNameを取得して配列に格納することです。 しかし、私が試したすべてが私を助けなかった。あなたはそれを解決するために私を助けてくれますか?

答えて

1

dataオブジェクトの構造が本当にあなたのquestingの画像からどのようなものであるかは明らかではないが、私はこれがうまくいくと思う:

var arr = Object.keys(data).map(k => data[k].rName); 
1

あなたもきれいな方法で「.MAP」を使用することができます。

let roomArray = data.map(roomObject => {return roomObject.rName}) 
関連する問題