这是我的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;
}
询问:
getJobs() {
return this._http.get(jobsUrl)
.map((response:Response) => <Job[]>response.json().data)
}
问题是在强制转换为Job[]
我期望datetime
属性后,Date
它是字符串。它不应该转换为Date对象吗?我在这里想念什么?
@Gunter是绝对正确的。我唯一想添加的实际上是如何反序列化json对象,将其date属性保留为日期而不是字符串(从引用的帖子中看到这种方法并不容易)。
这是我的尝试:
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;
}
}
您可以在此处看到这种方法的示例:dateReviver示例中的JSON.parse函数。
希望这可以帮助。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句