这是我的 json:
{
"data": [
{
"comment": "3541",
"datetime": "2016-01-01"
}
]
}
这是模型:
export class Job {
constructor(comment:string, datetime:Date) {
this.comment = comment;
this.datetime = datetime;
}
comment:string;
datetime:Date;
}
Query:
getJobs() {
return this._http.get(jobsUrl)
.map((response:Response) => <Job[]>response.json().data)
}
问题是在投射到之后Job[]
我预计datetime
财产将是Date
但它是字符串。它不应该转换为 Date 对象吗?我在这里缺少什么?
@Gunter 是绝对正确的。我唯一想添加的实际上是如何反序列化 json 对象,将其日期属性保留为日期而不是字符串(从引用的帖子中看到这种方法并不容易)。
这是我的尝试:
export class Helper
{
public static Deserialize(data: string): any
{
return JSON.parse(data, Helper.ReviveDateTime);
}
private static ReviveDateTime(key: any, value: any): any
{
if (typeof value === 'string')
{
let a = /\/Date\((\d*)\)\//.exec(value);
if (a)
{
return new Date(+a[1]);
}
}
return value;
}
}
您可以在这里看到这种方法的示例:JSON.parse 函数在 dateReviver 示例中。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)