Tôi không thể ánh xạ mảng json lồng nhau là phản hồi từ Web đến mảng mô hình của tôi trong Angular2. Giả sử tôi có phản ứng mảng json như sau:Angular2 Ánh xạ mảng json lồng nhau thành mô hình
[{
"base_url": "http://mysearch.net:8080/",
"date": "2016-11-09",
"lname": "MY PROJ",
"name": "HELLO",
"description": "The Test Project",
"id": 10886789,
"creationDate": null,
"version": "2.9",
"metrics": [{
"val": 11926.0,
"frmt_val": "11,926",
"key": "lines"
},
{
"val": 7893.0,
"frmt_val": "7,893",
"key": "ncloc"
}],
"key": "FFDFGDGDG"
}]
Tôi đã cố gắng tự lập bản đồ các lĩnh vực đề cập vào liên kết Angular 2 observable doesn't 'map' to model để mô hình của tôi và đã có thể hiển thị những người trong HTML của tôi bằng cách duyệt qua ngFor ..... nhưng Tôi cũng muốn hiển thị giá trị ncloc và dòng cũng trong HTML nhưng tôi không chắc chắn làm thế nào để ánh xạ các giá trị đó vào mảng Mô hình của tôi như đã đề cập trong liên kết ở trên. Bạn có thể giúp tôi với điều này không?
Cảm ơn.
EDIT
Chế độ lớp
export class DeiInstance {
base_url: string;
date: string;
lname : string;
name : string;
id : number;
key:string;
constructor(obj: DeiInstance) {
this.sonar_url = obj['base_url'];
this.lname = obj['lname'];
this.name = obj['name'];
this.id = obj['id'];
this.key = obj['key'];
this.date = obj['date'];
}
// New static method.
static fromJSONArray(array: Array<DeiInstance>): DeiInstance[] {
return array.map(obj => new DeiInstance(obj));
}
}
Bạn có mã nhiều hơn về ánh xạ hiện tại và Mô hình hiện tại không? – M4R1KU
Đây là Mô hình của tôi: lớp xuất khẩu DeiInstance { base_url: string; ngày: chuỗi; lname: string; tên: chuỗi; id: number; khóa: chuỗi; hàm tạo (obj: DeiInstance) { this.sonar_url = obj ['base_url']; this.lname = obj ['lname']; this.name = obj ['name']; this.id = obj ['id']; this.key = obj ['key']; this.date = obj ['date']; } // Phương pháp tĩnh mới. tĩnh từJSONArray (mảng: Mảng): DeiInstance [] { trả về mảng.map (obj => new DeiInstance (obj)); } } –
PingPong
@ M4R1KU Và tôi đang lặp qua listProjects được định nghĩa là DeiInstance [] trong thành phần của tôi để hiển thị các trường trong HTML của tôi – PingPong