将嵌套JSON映射到Angular 2中的模型
我想用嵌套的JSON映射模型,但它无法识别“message”将嵌套JSON映射到Angular 2中的模型,json,angular,Json,Angular,我想用嵌套的JSON映射模型,但它无法识别“message”id 我找了很多,找不到哪里不对劲 还想创建一个自动映射数据,将JSON与模型进行比较(不需要设置每个值),这是可能的吗 JSON数据: { "author": "John Doe", "message": { "id": 32133, "text": "Lorem ipsum dolor sit amet, consectetur adipiscing elit." }
id
我找了很多,找不到哪里不对劲
还想创建一个自动映射数据,将JSON与模型进行比较(不需要设置每个值),这是可能的吗
JSON数据:
{
"author": "John Doe",
"message": {
"id": 32133,
"text": "Lorem ipsum dolor sit amet, consectetur adipiscing elit."
}
}
}
post.model.ts
export class PostModel {
author: string;
message: PostMessageModel;
constructor() { }
convert(data: any) {
this.author = data.author;
this.message.id = data.message.id; // ERROR HERE
this.message.text = data.message.text;
...
}
}
interface PostMessageModel {
id: number;
text: string;
}
错误:
ERROR TypeError: Cannot set property 'id' of undefined
at PostModel.webpackJsonp.343.PostModel.convert (post.model.ts:10)
...
首先用某物初始化this.message,然后可以设置其字段。首先用某物初始化this.message,然后可以设置其字段。
this.message = {
id: data.message.id,
text: data.message.text
};