2016-04-06 29 views
19

Tôi đã theo tài liệu hướng dẫn bắt đầu Angular2 để lấy ứng dụng của riêng mình khỏi mặt đất, tôi đã thành công trong việc truy xuất các đối tượng JSON từ một tệp cục bộ và hiển thị chúng trong các mẫu angular2. Tuy nhiên hiện tại nó dựa vào các lớp góc cạnh khớp chính xác với cấu trúc của các đối tượng trong tệp JSON của tôi.Góc 2 phân tích đối tượng JSON thành các lớp góc

Cuối cùng tôi sẽ cần ứng dụng của mình hoạt động với JSON-LD, có tên thuộc tính như "@id". Tôi đã làm một số googling và có vẻ như RxJS có thể có chức năng tôi đang tìm nhưng tôi không chắc chắn nơi bắt đầu để interupt các ràng buộc tự động từ một số dữ liệu JSON thẳng vào các lớp angular2 của tôi, và thay vào đó có thể nhìn lên cái gì đó sẽ được dán nhãn là "@ id" trong json và thiết lập giá trị của SomeClass.id

mã hiện tự động tạo ra một mảng của một lớp Person:

getPeople(){ 
    return this._http.get(this._peopleUrl) 
     .map(response => <Person[]> response.json().data) 
     .do(data => console.log(data)) //debug to console 
     .catch(this.handleError); 
} 

Fine cho JSON như thế này:

[ 
{ 
    "id":"1", 
    "name":"tessa" 
}, 
{ 
    "id":"2", 
    "name":"jacob" 
} 
] 

Nhưng rõ ràng là không thành công cho JSON như thế này:

[ 
{ 
    "@id":"1", 
    "name":"tessa" 
}, 
{ 
    "@id":"2", 
    "name":"jacob" 
} 
] 

lớp của tôi là đơn giản (tại thời điểm :-))

export class Person { 
    constructor(
    public id:number, 
    public name:string, 
){} 
} 

bất cứ ai có thể chỉ cho tôi đi đúng hướng đối với một số tài liệu hướng dẫn/ví dụ về lập bản đồ phức tạp/khó khăn json cho các lớp học trong angular2?

Trả lời

Các vấn đề liên quan