我有一个人类,里面有一个日期字段:
export class Persoon {
name: string;
dateOfBirth: Date;
}
我的Java服务器提供了一个json字符串,如:
{"person":{"name":"Jansen","dateOfBirth":"1959-04-16"}}
在调试器中我得到的结论是AngularJS2认为它是一个字符串,当我使用日期管道时会发生以下错误:
EXCEPTION:[{{person.dateOfBirth |}中管道'DatePipe'的参数'1959-04-16'无效日期:PersonenComponent @ 26:10中的“dd-MM-yy”}}
如何制作日期约会?
答案 0 :(得分:3)
您需要将字符串字段映射到日期1:
getList() : Observable<SomeModel[]> {
return this._http.get(this._getListUrl).map(data => {
return this.extractData(data);
});
}
// parse a date in yyyy-mm-dd format
function parseDate(input) {
var parts = input.split('-');
return new Date(parts[0], parts[1]-1, parts[2]); // Note: months are 0-based
}
private extractData(res: Response) {
var data = res.json().data || [];
data.forEach((d) => {
d.dateOfBirth = this.parseDate(d.dateOfBirth);
});
return data;
}
看到这个问题: